我正在网页上工作。 在该网页中有4个文本框,每个文本框都有必填字段验证器。 该网页有3个按钮。 点击第一个按钮1st&应激发第二个必填字段验证。 在第二个按钮上,第二个和第三个必填字段验证器应该开启 就像这样在第3个按钮上第3个和第4个应该开火。
问题是,由于使用两个按钮调用了一个必需字段验证器,因此我无法使用验证组名称。 任何人都可以建议一个解决方案。 这将非常有用。
答案 0 :(得分:2)
您可以使用JS来验证特定组。对于每个按钮,创建单独的验证方法。
<script type="text/javascript">
function validateGroup12() {
var g1 = Page_ClientValidate("vgroup1");
var g2 = Page_ClientValidate("vgroup2");
if (!g1 || !g2) return false;
return true;
}
</script>
.aspx修改RequiredFieldValidator
并将群组名称设置为ValidationGroup
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
ControlToValidate="TextBox1" ValidationGroup="vgroup1,vgroup2" Display="Dynamic">
答案 1 :(得分:0)
对于Textbox 2和Textbox 3,有两个验证器,而不是一个验证器,验证组已正确设置为相应的按钮验证组。
即使这会复制验证器,也会简化您的逻辑。
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
ControlToValidate="TextBox1" ValidationGroup="vgroup1" Display="Dynamic">
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server"
ControlToValidate="TextBox2" ValidationGroup="vgroup1" Display="Dynamic">
<asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server"
ControlToValidate="TextBox2" ValidationGroup="vgroup2" Display="Dynamic">
<asp:Button ID="Button1" runat="server" Text="Button" ValidationGroup="vgroup1" />
<asp:Button ID="Button2" runat="server" Text="Button" ValidationGroup="vgroup2" />