我建立了一个Textbox控件Textbox1,将一个RequiredFieldValidator控件的ControlToValidator属性指向Textbox1,然后建立一个button1按钮,它的click方法如下: protected void Button1_Click(object sender, EventArgs e)
{
if (Page.IsValid == true)
{
Response.Write(string.Format("<script>alert('验证通过!');</script>")); }
else
{
Response.Write( string.Format("<script>alert('请在本文框中输入信息');</script>"));
}
} 这样一个简单的验证,居然也出了问题,当我不在Textbox1中输入数据而直接点击button1的时候(此时IsValid 应该是false),怎么不弹出‘请在本文框中输入信息'的对话框呢?
{
if (Page.IsValid == true)
{
Response.Write(string.Format("<script>alert('验证通过!');</script>")); }
else
{
Response.Write( string.Format("<script>alert('请在本文框中输入信息');</script>"));
}
} 这样一个简单的验证,居然也出了问题,当我不在Textbox1中输入数据而直接点击button1的时候(此时IsValid 应该是false),怎么不弹出‘请在本文框中输入信息'的对话框呢?
<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator runat="server" ID="RequiredFieldValidator1" ControlToValidate="txtName" Display="None" ErrorMessage="<span style=font-size:12px><b>没有找到必填字段</b><br>姓名是必要的。</span>" />直接在前台打就可以了
这样,点击submit类似的按钮后,javascript在客户端进行验证,失败后,不会调用服务器端的事件,因此进不了你的Button1_Click你可以把EnableClientScript设置成false。但是我也不认为这是个好主意,弹出提示的时候,后面的页面是空白的。
估计只有自己写javascript去检查空间好点了。
这个事件根本不会触发.
Button1后,Response.Write(string.Format(" <script>alert('验证通过!'); </script>")); 这条语句能执行呢??我真是不能理解,if (Page.IsValid == true)中的语句能执行,但是else中的语句不能!why??if (Page.IsValid == true)
{
Response.Write(string.Format(" <script>alert('验证通过!'); </script>")); }
else
{
Response.Write( string.Format(" <script>alert('请在本文框中输入信息'); </script>"));
}
}