我在复选框方面遇到了小问题。更好的方法是单选按钮,但我必须使用复选框来做到这一点。
代码如下:
$('input.box1').not(this).prop('checked', false).val("N");
它正在工作,因为选中了其中一个复选框。但这两个复选框的输入值为“true”。当我选中其他复选框时,如何更改该代码以执行此操作应具有“false”值。
我尝试这样的事情:
$('input.box1').on('change', function() {
$('input.box1').not(this).prop('checked', false).val("N");
$('input.box1').this.prop('checked', true).val("T");
});
但没有成功
-我期望什么? 1.在示例中,单击第一个复选框 - 该复选框的值为“T”,第二个复选框的值为“N” 2. 单击第二个复选框 - 该复选框的值为“T”,第一个复选框的值为“N”
最佳答案
您的代码在 $('input.box1').this.prop('checked',
true).val("T");
Uncaught TypeError: Cannot read property 'prop' of undefined
那是因为 $('input.box1').this
未定义。语法错误。
正确的方法是在更改函数中使用上下文 this
:
$('input.box1').on('change', function() {
$('input.box1').not(this).prop('checked', false).val("N");
$(this).val(this.checked?'Y':'N');
});
<强> Working Demo
关于javascript - 仅选中一个复选框和值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32392103/