【彻底疯了】一个服务器验证控件而已,居然越搞越复杂!
新开一帖,原帖:http://topic.csdn.net/u/20080716/10/67c1e697-c222-4b7f-b2e8-a7d99432abd4.html?seed=382442734#replyachor
根据msdn的说法,服务器控件的验证(比如RequiredFieldValidator)是在服务器端进行验证的。当EnableClientScript=ture时,验证还会在客服端进行。有高手认为不对的么?
但我又搞不懂了下面这段代码:
<%@ Page Language="C#" %>
<script runat="server">
void Button_Click(Object sender, EventArgs e)
{
if (Page.IsValid)
{
MessageLabel.Text = "Page submitted successfully.";
}
else
{
MessageLabel.Text = "There is an error on the page.";
}
}
</script>
<html>
<body>
<form runat="server">
<h3>Validator Example</h3>
Enter a number from 1 to 10.
<asp:textbox id="NumberTextBox"
runat="server"/>
<asp:rangevalidator id="NumberCompareValidator"
controltovalidate="NumberTextBox"
enableclientscript="False"
type="Integer"
display="Dynamic"
errormessage="Please enter a value from 1 to 10."
maximumvalue="10"
minimumvalue="1"
text="*"
runat="server"/>
<asp:requiredfieldvalidator id="TextBoxRequiredValidator"
controltovalidate="NumberTextBox"
enableclientscript="False"
display="Dynamic"
errormessage="Please enter a value."
text="*"
runat="server"/>
<br><br>
<asp:button id="SubmitButton"
text="Submit"
onclick="Button_Click"
runat="server"/>
<br><br>
<asp:label id="MessageLabel"
runat="server"/>
<br><br>
<asp:validationsummary
id="ErrorSummary"
runat="server"/>
</form>
</body>
</html>
csdn的实例代码。当我把enableclientscript="False" 设置为true时,void Button_Click(Object sender, EventArgs e)
{
if (Page.IsValid)
{
MessageLabel.Text = "Page submitted successfully.";
}
else
{
MessageLabel.Text = "There is an error on the page.";
}
}没反应了!
郁闷啊。怎么解释得通呢?
啊~~~~~吐血