开发者下午好, 这是我在 asp .net 中的内容,我希望用户只能选中 2 个复选框,超出应弹出的警报框。
<body>
<form id="form1" runat="server">
<div>
<table width="100%">
<tr>
<td>
<asp:CheckBox id="q3a" runat="server" Text="Public" />
</td>
<td>
<asp:CheckBox id="q3b" runat="server" Text="void" />
</td>
<td>
<asp:CheckBox id="q3c" runat="server" Text="protected"/>
</td>
<td>
<asp:CheckBox id="q3d" runat="server" Text="return" />
</td>
</tr>
</table>
<asp:Button ID="btnSubmit" Text="submit" runat="server"/>
</div>
</form>
</body>
我该如何为此编写javascript,我已经尝试过但找不到任何出路,请帮忙...
最佳答案
您应该在用户尝试选择第三个选项时立即阻止他们,以便只能提交两个选中的值并避免服务器端验证。
客户端 onchange 事件应该连接到与此类似的函数;
function validationCheck(checkbox) {
if(checkbox.checked) {
var count = 0;
count += document.getElementById('q3a').checked ? 1 : 0;
count += document.getElementById('q3b').checked ? 1 : 0;
count += document.getElementById('q3c').checked ? 1 : 0;
count += document.getElementById('q3d').checked ? 1 : 0;
if(count > 2) {
alert('You may only select two options.');
checkbox.checked = false;
}
}
}
输入应以 onchange="validationCheck(this);"
呈现.
关于c# - 如何从 4 个复选框中选中任意 2 个复选框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9698821/