我必须验证密码。它工作正常,但如果我添加runat = server我的密码验证不起作用。当我删除runat服务器它工作正常。
我的代码是:
<input value="" runat="server" class="validate[required] text-input" type="password" required pattern="(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{6,}" name="password" id="password" />
<input value="" runat="server" class="validate[required,equals[password]] text-input" type="password" name="password2" id="password2" />
对此主题的任何帮助将不胜感激。
答案 0 :(得分:2)
你已经采用普通的HTML标签来充当服务器端控件i,e runat =&#34; Server&#34; .Normal html控件不能用作服务器端控件,所以请采取asp.net控件并写必需的代码。
<asp:TextBox runat="server"/>
答案 1 :(得分:0)
当您在控件属性asp
中放置空格时,为元素创建不同的属性
在您的文本框控件中,您正在创建类似的属性
required pattern
所以,ASP
像这样创建你的文本框html
<input name="password" type="password" id="password" required="" pattern="asdsa" class="validate[required] text-input" />
<强>答案强>
所以你需要使用
背后的代码创建属性如果您在ASP
页
<input value="" runat="server" class="validate[required] text-input" type="password" name="password" id="password" />
代码隐藏在
之后 protected void Page_Load(object sender, EventArgs e)
{
password.Attributes.Add("required pattern","(?=.*\\d)(?=.*[a-z])(?=.*[A-Z]).{6,}");
}