我有一个复选框,一旦用户点击输入框,就需要继续检查。
问题:首先单击复选框已选中,效果正常。再次单击输入时,将取消选中该复选框。
需要输出:
我希望复选框保持选中状态,因为这会触发更改事件。
我搜索了很多例子来找到这个解决方案,却找不到它。
感谢任何帮助。
请看小提琴:
http://jsfiddle.net/nrYec/194/
JS:
$('input').click(function() {
$('#x').text(this.checked ? "is checked" : "is not checked");
});
$('.b2').click(function() {
$('.trigger').click();
});
答案 0 :(得分:3)
您在评论中澄清了您希望单击文本框以选中复选框,但是要点击复选框本身才能正常工作。因此,请勿触发点击事件,只需直接设置复选框checked
属性:
$('.b2').click(function() {
$('.trigger').prop("checked", true);
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input class='trigger' type='checkbox'>
<input class='b2' type='text' name='something'>
<input class='b2' type='text' name='something'>
<div id='x'></div>
&#13;
答案 1 :(得分:2)
试试这个:
$('.b2').click(function() {
if (!$('.trigger').prop('checked')) {
$('.trigger').prop('checked', 'true');
};
});
$('input').click(function() {
$('#x').text($('.trigger').prop('checked') ? "is checked" : "is not checked");
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input class='trigger' type='checkbox'>
<input class='b2' type='text' name='something'>
<input class='b2' type='text' name='something'>
<div id='x'></div>
&#13;
答案 2 :(得分:1)
一种选择是将其包装在SELECT mhsw.*,tbl.*
FROM mhsw
INNER JOIN
(SELECT mkid
FROM krs
Where grade IN ('A', 'B', 'C')
AND final = 'Y') tbl ON mhsw.nim = tbl.mkid
语句中:
if
答案 3 :(得分:0)
$('input').click(function() {
if ($(this).attr('type') !== "checkbox")
$('input[type="checkbox"]').prop('checked', true)
});
这将强制在单击任何其他输入时检查复选框,但在单击时表现正常。
答案 4 :(得分:0)
选中复选框的最佳方法是在复选框上添加一个处理器onchange listener,然后设置它javascript attribute checked = true
$('.trigger').on('change', function() {
$('.trigger')[0].checked = true;
})
答案 5 :(得分:0)
文件编号:prop
$('.b2').on('click',function() {
$('.trigger').prop("checked", true);
}).on('blur',function(){
if($(this).val().trim().length === 0){
$('.trigger').prop("checked", false);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input class='trigger' type='checkbox'>
<input class='b2' type='text' name='something'>
<input class='b2' type='text' name='something'>
<div id='x'></div>