在一个页面上单独验证两个表单的问题,可以通过使用ASP.NET的验证控件和自定义验证方法来实现。以下是一个简单的示例,说明如何在一个页面上单独验证两个表单。
首先,在页面上添加两个表单和相应的验证控件。例如:
<form id="form1" runat="server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TextBox1" ErrorMessage="RequiredFieldValidator"></asp:RequiredFieldValidator>
<asp:Button ID="Button1" runat="server" Text="Submit" OnClick="Button1_Click" />
</form>
<form id="form2" runat="server">
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="TextBox2" ErrorMessage="RequiredFieldValidator"></asp:RequiredFieldValidator>
<asp:Button ID="Button2" runat="server" Text="Submit" OnClick="Button2_Click" />
</form>
接下来,在服务器端代码中添加两个按钮的单击事件处理程序。例如:
protected void Button1_Click(object sender, EventArgs e)
{
Page.Validate("validationGroup1");
if (Page.IsValid)
{
// 在此处添加表单1的处理逻辑
}
}
protected void Button2_Click(object sender, EventArgs e)
{
Page.Validate("validationGroup2");
if (Page.IsValid)
{
// 在此处添加表单2的处理逻辑
}
}
最后,为每个表单的验证控件分配一个唯一的验证组,以便可以单独验证每个表单。例如:
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TextBox1" ErrorMessage="RequiredFieldValidator" ValidationGroup="validationGroup1"></asp:RequiredFieldValidator>
<asp:Button ID="Button1" runat="server" Text="Submit" OnClick="Button1_Click" ValidationGroup="validationGroup1" />
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="TextBox2" ErrorMessage="RequiredFieldValidator" ValidationGroup="validationGroup2"></asp:RequiredFieldValidator>
<asp:Button ID="Button2" runat="server" Text="Submit" OnClick="Button2_Click" ValidationGroup="validationGroup2" />
通过以上步骤,可以实现在一个页面上单独验证两个表单的功能。
<head runat="server">
<title>无标题页</title>
<script language="javascript">
function check()
{
var email = document.getElementById('TextBox1');
var pwd = document.getElementById('TextBox2');
if (email.value=="" || pwd.value=="")
{
alert("请填写完整内容");
return false;
}
else
{
var mailStr = /(("w)+)@(("w)+).[cc|com|net|org|tv|cn]/ig;
if (!mailStr.exec(email.value))
{
alert('Email地址书写不正确!"n请您重新输入!');
email.value = '';
email.focus();
return false;
}
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
领取专属 10元无门槛券
手把手带您无忧上云