我的webform中有10个asp.net复选框,如果用户选择4个复选框,然后继续按钮单击事件,它会重定向到Default.aspx,如果用户选择6复选框,然后单击继续按钮,则会弹出javascript警告框并且用户不会重定向到default.aspx ...
答案 0 :(得分:1)
检查出来 - >
<强> ASPX:强>
<asp:CheckBox ID="CheckBox1" runat="server" /><br />
<asp:CheckBox ID="CheckBox2" runat="server" /><br />
<asp:CheckBox ID="CheckBox3" runat="server" /><br />
<asp:CheckBox ID="CheckBox4" runat="server" /><br />
<asp:CheckBox ID="CheckBox5" runat="server" /><br />
<asp:CheckBox ID="CheckBox6" runat="server" /><br />
<asp:CheckBox ID="CheckBox7" runat="server" /><br />
<asp:CheckBox ID="CheckBox8" runat="server" /><br />
<asp:CheckBox ID="CheckBox9" runat="server" /><br />
<asp:CheckBox ID="CheckBox10" runat="server" /><br />
<input id="btnSubmit" type="submit" value="Continue" />
<强> JAVASCRIPT:强>
$("#btnSubmit").click(function(){
var vCheckedCBCount = $("input:checkbox").filter(function(index){
return $(this)[0].checked == true;
}).length;
if(vCheckedCBCount > 5)
{
alert('You cannot check more than 5 check box.');
return false;
}
});
答案 1 :(得分:0)
Sukhi有一个很好的方法来做到这一点。但是,另一种方法是每次有人点击复选框进行检查时检查:
给你一个类的复选框:
<input type="checkbox" name="items" value="7" id="Checkbox7" class="checkme" />
然后在jQuery中:
$(".checkme").click(function()
{
if($(this).is(":checked"))
{
if($(".checkme:checked").length > 5)
{
// show message
return false;
}
}
if($(this).is(":checked"))
{
if($(".checkme:checked").length > 5)
{
// show message
return false;
}
}
这仅在用户单击复选框并且值为“已选中”
时执行检查