jQuery中获取CheckBox的checked属性值的问题

  • Post author:
  • Post category:其他


<input type=”checkbox” class=”aihao”>吃

alert($(all[i]).attr(“checked”));

如果选中,则弹出checked,如果没有选中,则弹出undefined。

再看下面这句代码

alert($(all[i]).attr(“checked”)==”checked”);

如果选中,则弹出true,如果没有选中,则弹出false。

也就是说,checked这个属性的值有两个:那就是checked和undefined。

但是,再看这句代码(有效)

alert(!$(all[i]).attr(“checked”))

居然可以对checked的属性值进行取反,再看下面这两句代码

var a =$(all[i]).attr(“checked”);

alert(typeof a);

选中,打印的是String,未选中,打印的undefined。

这也就是说,checked这个属性值实际上是有四个的,分别是:

字符串类型的checked

布尔类型的true

undefined

布尔类型的false

其中,字符串类型的checked,实际上等效于布尔类型的true,而undefined,实际上等效于布尔类型的false



版权声明:本文为i_myxxx原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。