读书人

jS(jquery)复选框有关问题请问

发布时间: 2012-10-20 14:12:48 作者: rapoo

jS(jquery)复选框问题请教
四个复选框 一个提交按钮,我想问问 选择value=ck4的时候 全部选上 当 value=ck3的时候value=ch3 value=ck2 value=ck1的checkboxe被选上 当value=ck2的时候同理 我想根据 checkbox的value值来判断,不根据checkbox是第几个来判定,因为在我那个程序里 checkbox的位置是不固定了 是会变的 所以我想只能根据value来判定吧 求大侠指点 用Jquery或者JS都行,我今天自己用juqery写了,我是就是根据根据我上面说的条件判定的虽然能实现但有问题 取消选择的时候只能从第四个开始取消 求大侠们指教指教
<input type="checkbox" name="CHK" value="ck1"/>
<input type="checkbox" name="CHK" value="ck2"/>
<input type="checkbox" name="CHK" value="ck3"/>
<input type="checkbox" name="CHK" value="ck4"/>


[解决办法]
给点力好不好,结帐率太低了。

HTML code
<input type="checkbox" name="CHK" value="ck3"/>3<input type="checkbox" name="CHK" value="ck4"/>4<input type="checkbox" name="CHK" value="ck1"/>1<input type="checkbox" name="CHK" value="ck2"/>2.............以下只是测试<input type="checkbox" name="CHK" value="ck5"/>5<input type="checkbox" name="CHK" value="ck6"/>6<input type="checkbox" name="CHK" value="ck7"/>7<script type="text/javascript">var chk=document.getElementsByName("CHK");    for(var i=0;i<chk.length;i++){        (function(n){            chk[n].onclick=function(){                var i=this.value.replace(/[^\d]/g,"");                for(var l=0;l<chk.length;l++){                    var b=chk[l].value.replace(/[^\d]/g,"");                    if(this.checked&&i>b){                        chk[l].checked=true;                    }                    if(!this.checked&&i<b){                        chk[l].checked=false;                    }                }            }        })(i);    }</script>
[解决办法]
这个问题貌似以前有人问过啊,楼主以下代码试试,这是我以前帮别人写的,希望对你有所帮助。
HTML code
<!DOCTYPE html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>test</title><script type="text/javascript" src="jquery-1.7.2.min.js"></script><script language="javascript">    $(function(){        $(':checkbox').click(function(){            //获取当前点击复选框前面的同辈复选框元素的个数            var count = $(this).prevAll(':checkbox').size();            if($(this).get(0).checked){                for(var i = 0;i < count;i++){                    $(':checkbox').get(i).checked = true;                }            }        });    })</script></head><body>  <input type="checkbox"  />one  <input type="checkbox"  />two  <input type="checkbox"  />three  <input type="checkbox"  />four</body></html> 

读书人网 >JavaScript

热点推荐