javascript - 无法使用 jQuery 在 Chrome 中将复选框设置为已选中

标签 javascript jquery

我有一些代码在最新版本的 chrome (32.0.1700.107) 中损坏了。 jQuery 版本是 1.10.1。这段代码去年一直在其他浏览器中运行。它在 IE8 中可以正常工作。代码的关键部分如下 -

var stateWideCb = $('.showStatewide input');
stateWideCb.change(function () {
    var b = $(this).is(':checked');
            $('.showRegion input').attr('checked', b);
    });

发生的情况是,在前两次单击 Master 复选框后,代码停止工作。

你可以在http://jsfiddle.net/photo_tom/dXczB/1/看到它

最佳答案

改变:

.attr('checked', b);

.prop('checked', b);

jsFiddle example

作为jQuery docs on .attr()状态:

To retrieve and change DOM properties such as the checked, selected, or disabled state of form elements, use the .prop() method.

关于javascript - 无法使用 jQuery 在 Chrome 中将复选框设置为已选中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21864916/

相关文章:

javascript - 有条件地加载并执行外部 js 文件

JavaScript 类型强制首选项

jquery - 如果父 div 包含 X 类的子 div,如何动态更改 hX 标签的大小

jQuery 规则插件 - 添加新规则

javascript - 如何在 body 负载上调用函数

javascript - 手机导航点击功能

javascript - 更改 Sailsjs 中的 http 请求限制

javascript - iOS 自动播放视频的取消静音按钮

javascript - Web worker 中的全局变量

jQuery - 在 .prop() 之后运行函数