首先,我们平时通过label自带的for属性就可以将label和单选或者复选的效果连接在一起了,代码如下:
<%--我们只要保证复选框的id和label标签的for属性名称保持一致,这样点击文字的时候,复选框就会选中--%>
<input type="checkbox" id="chk"><label for="chk">guest</label>
但是项目中遇到复选框数量不定,遍历出来的数据时,给每一个复选框加id就有点麻烦了,所以写一段js可以简单实现
<input type="checkbox"><label onclick="clickLabel(this)">guest</label>
/**
* 点击label的时候选中前面的复选框
* @param e
*/
function clickLabel(e) {
if ($(e).prev().prop("checked") == false){
$(e).prev().prop("checked",true);
}else{
$(e).prev().prop("checked",false);
}
}