我正在尝试在asp.net Web表单中为我的文本框设置RegularExpressionValidator和RequiredFieldValidator。我的RegularExpressionValidator工作并给出错误消息,但单击提交按钮时,我的RequiredFieldValidator不显示错误消息。我也尝试将ValidationGroup添加到我的文本框和按钮以及RegularExpressionValidator和RequiredFieldValidator,但没有任何改变。你能帮忙解决一下吗? 顺便说一句,我已经添加了
<appSettings>
<add key="ValidationSettings:UnobtrusiveValidationMode" value="None" />
</appSettings>
到我的webconfig。谢谢。
<input type="text" id="user" placeholder="username" runat="server"/>
<asp:RegularExpressionValidator runat="server" ErrorMessage="Username is not suitable" Display="Dynamic"
ValidationExpression="^([a-zA-Z0-9]{0,8})$" ID="req1"
ForeColor="Red" ControlToValidate="user" />
<asp:RequiredFieldValidator runat="server" Display="Dynamic" ErrorMessage="Username required" ID="req2"
ForeColor="Red" ControlToValidate="user"/>
<button id="submitbtn" type="button" runat="server">Sign up</button>
答案 0 :(得分:0)
试试这个
Username: <input type="text" id="user" name="usrname" required>
<input type="submit" id="submitbtn" type="button" runat="server"/>
<asp:RegularExpressionValidator runat="server" ErrorMessage="Username is not suitable" Display="Dynamic"
ValidationExpression="^([a-zA-Z0-9]{0,8})$" ID="req1"
ForeColor="Red" ControlToValidate="user" />
<asp:RequiredFieldValidator runat="server" Display="Dynamic" ErrorMessage="Username required" ID="req2"
ForeColor="Red" ControlToValidate="user"/>
答案 1 :(得分:0)
您可以通过添加&#39; onclick&#39;来解决问题。按钮的eventhandler如下:
<button id="submitbtn" type="button" runat="server" onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$MainContent$submitbtn", "", true, "", "", false, false))">Sign up</button>
OR
使用Asp.Net按钮控件,它将具有由Asp.Net呈现的onclick处理程序。
<asp:Button ID="submitbtn" Text="Sign up" runat="server" />
似乎只有&#39; WebForm_DoPostBackWithOptions&#39;调用函数,验证将触发。
答案 2 :(得分:0)
<button id="submitbtn" type="submit" runat="server">Sign up</button>
Type =“submit”会将页面发回服务器,而type不会将页面发布到服务器。
另一种方法是使用Page.isValid属性。