开发者社区> 问答> 正文

为何jQuery判断已选中的checkbox,Chrome获取的值永远是false而IE是true?

代码如下:

                $(":checkbox").on("blur", function () {
                    console.log($(this).prop("checked"));
                    console.log(this.checked);
}

在chrome中输出为:false false
而在IE控制台的输出为:true true
……一口老血
求问这究竟是为何??
感谢 daniellinbiti 的回答。已经找到问题所在了,就在于on绑定的是blur状态而不是change状态。这段代码一开始编写测试的时候也是正常的,后来别人运行的时候出了问题,我再测试就发现了这个问题。
结果就是chrome必须要绑定change事件才能够保证百分百获取正确值。

展开
收起
小旋风柴进 2016-03-18 11:20:30 2711 0
1 条回答
写回答
取消 提交回答
  •  <!DOCTYPE html>
    <html>
    <head>
    <script src="/jquery/jquery-1.11.1.min.js">
    </script>
    <script>
    </script>
    </head>
    <body>
    <input type="checkbox" id='btn'/>
    </body>
    <script>
    $(':checkbox').on("blur", function () {
                        console.log($(this).prop("checked"));
                        console.log(this.checked);
                                            });
    </script>
    </html>
    2019-07-17 19:06:14
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关课程

更多

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载