-1
如何在回发asp.net页面之前为每个复选框执行requiredfield检查?所以至少需要检查一个复选框。requiredfield检查中继器中的asp.net复选框?
ASPX
<asp:Button ID="Submit" Text="Submit" runat="server" OnClick="Submit_Click" />
如何在回发asp.net页面之前为每个复选框执行requiredfield检查?所以至少需要检查一个复选框。requiredfield检查中继器中的asp.net复选框?
ASPX
<asp:Button ID="Submit" Text="Submit" runat="server" OnClick="Submit_Click" />
对于其中至少有一个被选中复选框组,我所知道的最简单的方法是使用一个<asp:CustomValidator />
。编写JavaScript验证功能(以验证复选框并确保至少选中一个复选框)并将其分配给<asp:CustomValidator />
。
示例标记:
<asp:CheckBox ID="CheckBox1" runat="server" />
<asp:CheckBox ID="CheckBox2" runat="server" />
<asp:CheckBox ID="CheckBox3" runat="server" />
<asp:CheckBox ID="CheckBox4" runat="server" />
<asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="Check at least one" ClientValidationFunction="atLeastOneIsChecked"></asp:CustomValidator>
例的JavaScript:
function atLeastOneIsChecked(sender, args) {
var chk1 = document.getElementById('<%=CheckBox1.ClientId %>').checked;
var chk2 = document.getElementById('<%=CheckBox2.ClientId %>').checked;
var chk3 = document.getElementById('<%=CheckBox3.ClientId %>').checked;
var chk4 = document.getElementById('<%=CheckBox4.ClientId %>').checked;
args.IsValid = (chk1 || chk2 || chk3 || chk4);
return args.IsValid;
}
此外,你应该用'JavaScript',因为它需要你回发到服务器之前完成此标记... – xandercoded 2012-03-05 00:22:56