$('#checkbox').attr('checked'); 返回的是checked或者是undefined,不是原来的true和false了,有关此问题的解决方法例如以下

在JQ1.6之前的版本号,我们会这样写我们的代码:

<input type='checkbox' id='cb'/>
<script>
//获取是否选中
var isChecked = $('#cb').attr('checked'); //设置选中
$('#cb').attr('checked',true);
</script>

这样写在JQ1.6之前全然没问题,但是当我们升级JQ1.6到更高的版本号时,问题就来了,此时我们会发现: 

$('#cb').attr('checked'); 返回的是checked或者是undefined。不是原来的true和false了。 而且checked属性在页面初始化的时候已经初始化好了。不会随着状态的改变而改变。

所以假设checkbox一開始是选中的。那么返回的是checked,假设一開始没被选中。则返回的是undefined

<input type='checkbox' id='cb'/>
<script>
//获取是否选中
var isChecked = $('#cb').prop('checked');
//或
var isChecked = $('#cb').is(":checked");
//设置选中
$('#cb').prop('checked',true);
</script>

分析了当中的原因,能够这样理解: 

它将“属性”与“特性”做了差别。属性指的是“name,id”等等,特性指的是“selectedIndex, tagName, nodeName”等等。 

JQ1.6之后,能够通过attr方法去获得属性,通过prop方法去获得特性

$("#cb").attr("tagName"); //undefined
$("#cb").prop("tagName"); //INPUT

随机推荐

  1. BPL vs. DLL

    第一部分:有关包的介绍 一般我们编写编译一个DELPHI应用程序时,会产生一个EXE文件,也就是一个独立的WINDOWS应用程序.很重要的一点:区别于Visual Basic,DELPHI产生的是预先 ...

  2. sort 使用 tab键 作为 分隔符_人生如梦_百度空间

    sort 使用 tab键 作为 分隔符_人生如梦_百度空间 sort 使用 tab键 作为 分隔符 For some reason "\t" doesn't work right, ...

  3. linux内核函数之 blk_plug

    分析: /* * blk_plug permits building a queue of related requests by holding the I/O * fragments for a ...

  4. E. Mike and Foam(容斥原理)

    E. Mike and Foam Mike is a bartender at Rico's bar. At Rico's, they put beer glasses in a special sh ...

  5. Python编程中常用的12种基础知识总结

    原地址:http://blog.jobbole.com/48541/ Python编程中常用的12种基础知识总结:正则表达式替换,遍历目录方法,列表按列排序.去重,字典排序,字典.列表.字符串互转,时 ...

  6. Java使用Socket传输文件遇到的问题(转)

    1.写了一个socket传输文件的程序,发现传输过去文件有问题.找了一下午终于似乎找到了原因,记录下来警示一下: 接受文件的一端,向本地写文件之前使用Thread.sleep(time)休息一下就解决 ...

  7. [gkk]传智-适配器设计模式,如同电源适配器

    //适配器设计模式 是图形化设计中用的.如同电源适配器 import java.awt.*; inport java.awte public calss MyFrame{ public static ...

  8. C++&&Mysql&&codeblocks

    #include <iostream> #include <stdio.h> #include <winsock2.h> #include <mysql.h& ...

  9. unix解释器文件详解

    exec执行普通文件和解释器文件的区别 2014-11-15 23:52:45 分类: LINUX exec执行普通文件和解释器文件的区别 ——lvyilong316 1. 从一个问题开始 首先要从项 ...

  10. 关于CodeReview(java)(转)

    关于codereview,在平时的开发中,经常忽略的环节,参照目前介绍写好代码的几本书和之前掉进的坑,做了一个总结,分享出来. 为什么要做 通过review规避一些代码层面的问题 提升可读性,方便后续 ...