问题描述
在单页Asp.net页面中试验JQueryForm验证,没问题,但是用到我项目中(带母版页)就一直没效果,找了半天也不知道什么原因,求高手解答。直接上代码。aspx代码,为了简单,就不发母版页了。<%@PageTitle="玩家注册"Language="C#"MasterPageFile="~/Site.Master"AutoEventWireup="true"CodeBehind="Register.aspx.cs"Inherits="SuperMinersWeb.Register"%><asp:ContentID="Content1"ContentPlaceHolderID="head"runat="server"><scriptsrc="Scripts/jquery-3.0.0.js"></script><scriptsrc="Scripts/jquery.validate.min.js"></script><scriptsrc="Scripts/Default.js"></script></asp:Content><asp:ContentID="Content3"ContentPlaceHolderID="MainContent"runat="server"><divclass="registerpage"><table><tbody><tr><th><labelfor="txtUserName"><span>*</span>用户名:</label></th><tdclass="inputcol"><asp:TextBoxID="txtUserName"runat="server"MaxLength="15"CssClass="textbox"ToolTip="请输入用户名!"TabIndex="1"/></td><td><spanid="msgUserName"class="message"></span><imgid="imgUserNameOK"src="Images/yes.png"class="message"style="display:none"/></td></tr><tr><th><labelfor="txtNickName">昵称:</label></th><tdclass="inputcol"><asp:TextBoxID="txtNickName"runat="server"MaxLength="15"CssClass="textbox"ToolTip="请输入昵称!"TabIndex="2"/></td><td><span></span></td></tr><tr><th><labelfor="txtPassword"><span>*</span>密码:</label></th><td><asp:TextBoxID="txtPassword"runat="server"TextMode="Password"CssClass="textbox"MaxLength="15"ToolTip="请输入密码!"TabIndex="3"/></td><td><spanid="msgPassword"class="message"></span><imgid="imgPasswordOK"src="Images/yes.png"class="message"style="display:none"/></td></tr><tr><th><labelfor="txtConfirmPassword"><span>*</span>确认密码:</label></th><td><asp:TextBoxID="txtConfirmPassword"runat="server"TextMode="Password"CssClass="textbox"MaxLength="15"ToolTip="请再次输入密码!"TabIndex="4"/></td><td><spanid="msgConfirmPassword"class="message"></span><imgid="imgConfirmPasswordOK"src="Images/yes.png"class="message"style="display:none"/></td></tr><tr><th><labelfor="txtEmail"><span>*</span>邮箱:</label></th><td><asp:TextBoxID="txtEmail"runat="server"MaxLength="20"CssClass="textbox"ToolTip="请输入邮箱!"TabIndex="5"/></td><td><spanid="msgEmail"class="message"></span><imgid="imgEmailOK"src="Images/yes.png"class="message"style="display:none"/></td></tr><tr><th><labelfor="txtQQ">QQ:</label></th><td><asp:TextBoxID="txtQQ"runat="server"MaxLength="15"CssClass="textbox"TabIndex="6"/></td><td><spanid="msgQQ"class="message"></span><imgid="imgQQOK"src="Images/yes.png"class="message"style="display:none"/></td></tr><tr><th><labelfor="txtAuthCode"><span>*</span>验证码:</label></th><td><asp:TextBoxID="txtAuthCode"runat="server"MaxLength="15"CssClass="textbox"ToolTip="请输入验证码!"TabIndex="7"/></td><td><spanid="msgAuthCode"class="message"></span><imgid="imgAuthCodeOK"src="Images/yes.png"class="message"style="display:none"/></td></tr><tr><th></th><td>请输入此验证码<imgid="imgAuthCode"src="AuthCode"class="checkimg"alt="验证码"/><ahref="javascript:CallServerForUpdate()"class="checkimg">换下一张</a></td><td></td></tr></tbody></table><asp:ButtonID="btnRegister"CssClass="button"runat="server"Text="注册"OnClick="btnRegister_Click"TabIndex="8"/></div></asp:Content>
由于有母版页,所以在客户端生成的ID都自带“MainContent”前缀$().ready(function(){try{$("#form1").validate({rules:{MainContent_txtUserName:{required:true,minlength:3,maxlength:15},MainContent_txtNickName:{maxlength:15},MainContent_txtPassword:{required:true,minlength:6,maxlength:15},MainContent_txtConfirmPassword:{required:true,minlength:6,maxlength:15,equalTo:MainContent_txtPassword},MainContent_txtEmail:{required:true,maxlength:20}},messages:{MainContent_txtUserName:{required:"请输入用户名",minlength:"用户名最少3个字符",maxlength:"用户名最多15个字符"},MainContent_txtNickName:{maxlength:"昵称最多15个字符"},MainContent_txtPassword:{required:"请输入密码",minlength:"密码最少6位",maxlength:"密码最多15位"},MainContent_txtConfirmPassword:{required:"请再次输入密码",minlength:"密码最少6位",maxlength:"密码最多15位",equalTo:"两次密码不一至,请重新输入"},MainContent_txtEmail:{required:"请输入电子邮箱",maxlength:"您输入的电子邮箱过长"}}})}catch(err){alert(err);}$("#MainContent_txtPassword").blur(CheckPassword);});functionCheckPassword(){$("#msgPassword").text("");$("#imgPasswordOK").css("display","none");varpwd=$("#MainContent_txtPassword").val();if(pwd.length<6){$("#msgPassword").text("密码至少6个字符");return;}$("#imgPasswordOK").css("display","inline");}
解决方案
解决方案二:
自己顶顶顶顶
解决方案三:
没人回呢,自己再顶!
解决方案四:
为什么没人回呢,在线苦等
解决方案五:
你可以把写死的控件名改成<%=txtUserName.ClientID%>这样试试
解决方案六:
你发服务器端代码还不如直接发解析出来的HTML代码,jquery验证是客户端的事。
解决方案七:
就没有懂的吗?