jquery 中的 .change() 不起作用?
.change() in jquery not working?
我想使三个复选框相互排斥。
我写了下面的代码:
window.jQuery && jQuery(window.parent.document).ready(function() {
$('#id1,#id2,#id3').live('change', function(){
if ($this.prop('checked', true))
$('#id1,#id2,#id3').not(this).prop('checked', false)
})});
我已将此代码放在页面的最底部。
我检查了以下提供的解决方案:HTML <select> JQuery .change not working
在按下复选框之前或之后,我在控制台中没有收到任何错误消息,它似乎不起作用。
我是否需要创建一个单独的函数并将其附加到 HTML 代码中复选框的 "onchange" 事件?
试试这个:
$('#id1, #id2, #id3').on('change', function() {
console.log("Changed one!");
if ($(this).prop('checked', true)) {
$('#id1,#id2,#id3').not(this).prop('checked', false);
}
});
您的 if 语句后缺少大括号,我将 $this 更改为 $(this)。
这是有效的 fiddle:
https://jsfiddle.net/o7wptoca/3/
我想使三个复选框相互排斥。 我写了下面的代码:
window.jQuery && jQuery(window.parent.document).ready(function() {
$('#id1,#id2,#id3').live('change', function(){
if ($this.prop('checked', true))
$('#id1,#id2,#id3').not(this).prop('checked', false)
})});
我已将此代码放在页面的最底部。 我检查了以下提供的解决方案:HTML <select> JQuery .change not working
在按下复选框之前或之后,我在控制台中没有收到任何错误消息,它似乎不起作用。
我是否需要创建一个单独的函数并将其附加到 HTML 代码中复选框的 "onchange" 事件?
试试这个:
$('#id1, #id2, #id3').on('change', function() {
console.log("Changed one!");
if ($(this).prop('checked', true)) {
$('#id1,#id2,#id3').not(this).prop('checked', false);
}
});
您的 if 语句后缺少大括号,我将 $this 更改为 $(this)。
这是有效的 fiddle: https://jsfiddle.net/o7wptoca/3/