貌似加载时是选中的话,即使后来取消用jq的选择器获取$('#checkbox').attr('checked')还是true

解决方案 »

  1.   

    当然是实时的,取的是执行.attr()方法时的那个时刻的值。你把代码发上来看看,估计是使用方法有问题。
      

  2.   

    checkbox的id是except
    $('#except').click(function(){
    alert($('#except').attr('checked'));
    });每次点击都是true
      

  3.   

    你的写法是没有问题的,就是不知道ID获取的正确吗?<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
    <head>
    <script type="text/javascript">
    $().ready(function() {
       $('#except').click(function(){
         if($("#except").attr("checked")==true){
           alert("true");
        }else{alert("false");}
    });
    });
    </script>
    </head>
    <body>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
    <head>
    <title>改变Input Value值</title>
    <div>
    <input type="checkbox" id="except"/>1</td>
    </div>
    </head>
    </html>
    </body>
    </html>
      

  4.   

    id是唯一的,拷了你的代码试了总是false
      

  5.   

    你新建一个html,把这个代码考进去,是可以获取到的所以可能是你别的地方哪出问题了
      

  6.   


    事情已经清楚了, 6楼的写法, 在jquery 1.3.2 下是没有问题的; 在jquery 1.6.4 下是有问题的(总false)。 从dom元素的规定来说, 6楼的写法改进一下为好。 在vs2010等可以提示代码的编辑器里, 如果选中一般是 checked="checked" , 你要找人家的属性, 只能得到checked, 未选中, 无此属性, 得到的是 undefined; jquery 的高版本如此处理也说的过去。 最好是以 $("#chkId").is(":checked")  来判断下面的代码 jquery 的各个版本都是能通过的。 <html>
    <head>
        <script src="ec/jquery/jquery-1.3.2.min.js" type="text/javascript"></script>
        <script type="text/javascript">
            $(function () {
                $('#except').click(function () {
                    alert($("#except").is(":checked"));
                });
            });
        </script>
    </head>
    <body>
        <input type="checkbox" id="except"/>1
    </body>
    </html>
      

  7.   

    jq1.6有个prop什么的,你去看看。
      

  8.   

    高版本attr和prop
    元素的属性没有设置都会返回undefined值
      

  9.   


    事情已经清楚了, 6楼的写法, 在jquery 1.3.2 下是没有问题的; 在jquery 1.6.4 下是有问题的(总false)。 从dom元素的规定来说, 6楼的写法改进一下为好。 在vs2010等可以提示代码的编辑器里, 如果选中一般是 checked="checked" , 你要找人家的属性, 只能得到checked, 未选中, 无此属性, 得到的是 undefined; jquery 的高版本如此处理也说的过去。 最好是以 $("#chkId").is(":checked")  来判断下面的代码 jquery 的各个版本都是能通过的。 <html>
    <head>
        <script src="ec/jquery/jquery-1.3.2.min.js" type="text/javascript"></script>
        <script type="text/javascript">
            $(function () {
                $('#except').click(function () {
                    alert($("#except").is(":checked"));
                });
            });
        </script>
    </head>
    <body>
        <input type="checkbox" id="except"/>1
    </body>
    </html>是的,我用的1.91的jquery库,郁闷了好久,.is(":checked") 或者用prop方法,真不明白为什么要这样改
      

  10.   


    事情已经清楚了, 6楼的写法, 在jquery 1.3.2 下是没有问题的; 在jquery 1.6.4 下是有问题的(总false)。 从dom元素的规定来说, 6楼的写法改进一下为好。 在vs2010等可以提示代码的编辑器里, 如果选中一般是 checked="checked" , 你要找人家的属性, 只能得到checked, 未选中, 无此属性, 得到的是 undefined; jquery 的高版本如此处理也说的过去。 最好是以 $("#chkId").is(":checked")  来判断下面的代码 jquery 的各个版本都是能通过的。 <html>
    <head>
        <script src="ec/jquery/jquery-1.3.2.min.js" type="text/javascript"></script>
        <script type="text/javascript">
            $(function () {
                $('#except').click(function () {
                    alert($("#except").is(":checked"));
                });
            });
        </script>
    </head>
    <body>
        <input type="checkbox" id="except"/>1
    </body>
    </html>是的,我用的1.91的jquery库,郁闷了好久,.is(":checked") 或者用prop方法,真不明白为什么要这样改
    你再开一个贴, 地址复制给哥, 哥好好给你解答!
      

  11.   

    jquery判断checked的三种方法:.attr(‘checked’):   //看版本1.6+返回:”checked”或”undefined” ;1.5-返回:true或false
    .prop(‘checked’): //16+:true/false
    .is(‘:checked’):    //所有版本:true/false//别忘记冒号哦jquery赋值checked的几种写法:所有的jquery版本都可以这样赋值:// $(“#cb1″).attr(“checked”,”checked”);
    // $(“#cb1″).attr(“checked”,true);jquery1.6+:prop的4种赋值:// $(“#cb1″).prop(“checked”,true);//很简单就不说了哦
    // $(“#cb1″).prop({checked:true}); //map键值对
    // $(“#cb1″).prop(“checked”,function(){
    return true;//函数返回true或false
    });//记得还有这种哦:$(“#cb1″).prop(“checked”,”checked”);