如何在单击时将复选框返回到未选中状态?两个复选框选项应该是,"是,否" "不,是"或"不,不"但是一旦选中了复选框,我可以在买入和卖出之间翻转(正确),但是如何在点击时再次选择一个,再回到未选中的那个?
$('input.checkboxClass').on('click', function() {
$(this).parent().parent().find('.checkboxClass').prop('checked', false);
$(this).prop('checked', true)
});
答案 0 :(得分:3)
而不是所有这些,将复选框转换为单选按钮并使用名称对它们进行分组!如果要取消选择,您可以重置。
<form>
<table>
<tr>
<td>Product 1 </td>
<td><input type="radio" name="Product1" class="checkboxClass" />Buy</td>
<td><input type="radio" name="Product1" class="checkboxClass" />Sell</td>
</tr>
<tr>
<td>Product 2 </td>
<td><input type="radio" name="Product2" class="checkboxClass" />Buy</td>
<td><input type="radio" name="Product2" class="checkboxClass" />Sell</td>
</tr>
<tr>
<td>Product 3 </td>
<td><input type="radio" name="Product3" class="checkboxClass" />Buy</td>
<td><input type="radio" name="Product3" class="checkboxClass" />Sell</td>
</tr>
<tr>
<td colspan="3"><input type="reset" value="Clear All" /></td>
</tr>
</table>
</form>
没有JavaScript或没有。
答案 1 :(得分:0)
只需将“同级”<td>
的复选框设为false,而不是<tr>
的所有复选框:
$('input.checkboxClass').on('click', function(e) {
$(this).parent().siblings().find('.checkboxClass').prop('checked', false);
});
答案 2 :(得分:0)
我认为Praveen的答案是最正确的答案,但如果您仍然需要使用JS,我会这样做(在执行操作之前检查复选框的状态):
$('input.checkboxClass').on('click', function() {
if($(this).is(':checked')){
$(this).parent().parent().find('.checkboxClass').prop('checked', false);
$(this).prop('checked', true)
}
else {
$(this).prop('checked', false)
}
});