jQuery:仅限IE,输入:check,即使选中项目也会返回0

前端之家收集整理的这篇文章主要介绍了jQuery:仅限IE,输入:check,即使选中项目也会返回0前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我看到一个错误,我无法从一小部分用户复制.这是代码
var selected = $('#mytable input:checked');
if (selected.length == 0) {
    $('body').trigger('notice','Please select some items first');
    return;
}

即使用户检查了几个复选框,也会触发“通知”.似乎selected.length是不应该的.

[更新]选择器在更新为时工作:

var selected = $('input[class="selection"]:checked');

似乎包括在选择器中的id打破了东西,只在IE上.

代码适用于绝大多数用户,我们无法复制该问题,但对于看到问题的用户来说,它是一致的并且每次都会发生.

它似乎被隔离到IE(虽然我不能确定).我们正在使用jQuery 1.3.2(来自谷歌CDN).

有任何想法吗?

解决方法

粘贴周围的代码/事件处理程序是个好主意.首先,我建议您在第一行使用 :checkbox选择器:
$('#mytable input:checkBox:checked')

手册说:

$(':checkBox') is equivalent to
$('*:checkBox'),so
$('input:checkBox') should be used
instead.

当然,这可能没有任何区别. :checkBox等价于$(‘[type = checkBox]’),因此可能是IE正在阻塞输入:选中的部分选择器正在测试已检查状态的所有输入元素.

猜你在找的jQuery相关文章