【发布时间】:2017-02-05 00:37:39
【问题描述】:
我正在尝试根据用户选择的选择选项来限制能够检查的复选框的数量,即option1 = 1 复选框option 2 = 2 复选框,如果他们尝试选择更多,则提醒用户和.prop("checked", false)。
但我只是发生了奇怪的事情,我不明白为什么请帮忙!
html:
<form>
<select onclick="systemSelected();" class="mySelectBox">
<option value="1">option1</option>
<option value="2">option2</option>
<option value="3">option3</option>
<option value="4">option4</option>
<option value="5">option5</option>
</select>
</form>
<form onclick="limitCheckbox(userSelected);">
<input type="checkbox" name="box1">
<input type="checkbox" name="box2">
<input type="checkbox" name="box3">
<input type="checkbox" name="box4">
<input type="checkbox" name="box5">
</form>
javascript:
var userSelected = 0;
function systemSelected() {
$(".mySelectBox option").each(function(){
if ($(this.selected)) {
userSelected = parseInt($(".mySelectBox").val());
}
});
}
function limitCheckbox(userSystem) {
$("input[type=checkbox]").click(function(){
if($("input[type=checkbox]:checked".length > userSystem)) {
$(this).prop("checked", false);
alert("too many numbers");
} else if ($("input[type=checkbox]:checked".length === 0 )) {
alert("please select a game too play");
}
});
}
【问题讨论】:
-
您绝对必须为此使用两个独立的
<form>元素,还是用于演示? (但是,这与您的问题完全无关。)
标签: javascript jquery html html-select radio