<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
姓名1:<asp:TextBox id="txtName1" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator id="RequiredFieldValidator1"
runat="server" ErrorMessage="姓名1不能为空" ControlToValidate="txtName1"></asp:RequiredFieldValidator>
<asp:Button id="Button1" Text="Button1"></asp:Button>
<br>
<br>
姓名1:<asp:TextBox id="txtName2" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator id="Requiredfieldvalidator2"
runat="server" ErrorMessage="姓名2不能为空" ControlToValidate="txtName2"></asp:RequiredFieldValidator>
<asp:Button id="Button2" Text="Button2"></asp:Button>
</form>
</body>请问怎么处理才能实现以下功能?
按Button1时,让RequiredFieldValidator1 验证 txtName1 不为空,让Requiredfieldvalidator2不验证;
按Button2时,让RequiredFieldValidator2 验证 txtName2 不为空,让Requiredfieldvalidator1不验证;
请问怎么实现啊?现在的问题是:按提交Button,两个验证控件都会有效,这给两个不同提交Button需要处理不同的数据带来麻烦。
<form id="Form1" method="post" runat="server">
姓名1:<asp:TextBox id="txtName1" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator id="RequiredFieldValidator1"
runat="server" ErrorMessage="姓名1不能为空" ControlToValidate="txtName1"></asp:RequiredFieldValidator>
<asp:Button id="Button1" Text="Button1"></asp:Button>
<br>
<br>
姓名1:<asp:TextBox id="txtName2" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator id="Requiredfieldvalidator2"
runat="server" ErrorMessage="姓名2不能为空" ControlToValidate="txtName2"></asp:RequiredFieldValidator>
<asp:Button id="Button2" Text="Button2"></asp:Button>
</form>
</body>请问怎么处理才能实现以下功能?
按Button1时,让RequiredFieldValidator1 验证 txtName1 不为空,让Requiredfieldvalidator2不验证;
按Button2时,让RequiredFieldValidator2 验证 txtName2 不为空,让Requiredfieldvalidator1不验证;
请问怎么实现啊?现在的问题是:按提交Button,两个验证控件都会有效,这给两个不同提交Button需要处理不同的数据带来麻烦。
不然不可能,每个BUTTON在执行命令的时候都要提交一次,验证控件是在提交前来验证的
方法和isValid属性判断,然后写代码操作.
你把他的属性设成FLASE 后再单击不会引发验证了!
1、自己写javascript 或给控件加客户端事件
button.Attributes.Add("onclick", "yourjavascript");
2、在服务器端处理验证 推荐用RegularExpression
if(RequiredFieldValidator1.isValid==true)
{
..
}
randysbf(Randy)方法比较好。
问题解决了。
结帖