Textbox TextMode =" Email" asp.net

时间:2015-04-20 05:29:03

标签: asp.net

我尝试使用带文字模式的文本框="电子邮件",但它只验证带@的文本。我仍然可以在没有任何二级域名的情况下通过ABC @ ABC传递我的文本。

我仍然需要验证另一个验证/函数输入的字符串来完成此操作。

<asp:TextBox ID="Email" MaxLength="50" PlaceHolder="example@someone.com" runat="server" textMode="Email" /> =
<br/>
<asp:RegularExpressionValidator ID="EmailFormat" runat="server" Text="Please enter a valid Email" ToolTip="Please enter a valid Email" ControlToValidate="Email" ValidationExpression="(\w)+@(\w)+.com(.(\w)+)*" ForeColor="Red"  />

1 个答案:

答案 0 :(得分:0)

我认为您必须使用ASP.Net中的正则表达式尝试电子邮件验证。我有以下代码可以解决您的问题。

<asp:TextBox ID="txtEmailAddress" runat="server" CssClass="NormalTextBox inputText"></asp:TextBox>

<asp:RegularExpressionValidator ID="revEmailAddress" runat="server" SetFocusOnError="true"
                        Display="None" ControlToValidate="txtEmailAddress" resourceKey="revEmailAddress"
                        ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" ValidationGroup="register"></asp:RegularExpressionValidator>

<asp:Button ID="lnkBtnRegister" runat="server" ValidationGroup="register"
                        CssClass="login-btn fl" CausesValidation="true" OnClick="lnkBtnRegister_Click" />
<asp:ValidationSummary ID="valsumRegister" resourceKey="valsumRegister" runat="server"
                    ShowSummary="false" ShowMessageBox="true" ValidationGroup="register" HeaderText="Please Provide..." />