#jquery #asp.net
#jquery #asp.net
Вопрос:
Мой код проверки jquery работает как внутренний код jquery, но я хочу вызвать этот код на своей странице через внешний файл, который я делаю, я не могу вызвать
<script type="text/javascript">
$(document).ready(function(){
$("#form1").validate({
rules: {
<%=name.UniqueID %>:{
required:true
},
<%=password.UniqueID %>:{
required:true,
minlength:5,
},
<%=repassword.UniqueID %>:{
required:true,
equalTo:"#password"
},
<%=email.UniqueID %>: {
required: true,
email: true
},
<%=mobile.UniqueID %>: {
required:true,
digits:true,
minlength:10,
maxlength:10,
}
},
messages: {
<%=name.UniqueID %>:{
required: "* Required Field *"
},
<%=password.UniqueID %>:{
required:"* Required Field *"
}
}
});
});
</script>
Это мой код jquery, который я использую в качестве внутреннего кода, он работает нормально, пожалуйста, помогите мне вызвать этот код из внешнего файла js. в моем коде asp .net это-
<link rel="stylesheet" type="text/css" href="StyleSheet.css"/> </head> <body runat="server"> <form id="form1" runat="server" > <div> <asp:label ID="heading" runat="server" text="Validation Form"></asp:label> <table> <tr> <td class="deslabel">Name</td> <td><asp:TextBox Id="name" CssClass="destext" runat="server" ></asp:TextBox></td> </tr> <tr> <td class="deslabel">Password</td> <td> <asp:TextBox Id="password" CssClass="destext" runat="server" ></asp:TextBox></td> </tr> <tr> <td class="deslabel">Repassword</td> <td> <asp:TextBox Id="repassword" CssClass="destext" runat="server" ></asp:TextBox></td> </tr> <tr> <td class="deslabel">E-Mail ID</td> <td><asp:TextBox Id="email" CssClass="destext" runat="server" ></asp:TextBox></td> </tr> <tr > <td class="deslabel">Mobile Number</td> <td> <asp:TextBox Id="mobile" CssClass="destext" class="groupName" runat="server" MaxLength="10" ></asp:TextBox></td> </tr> <tr > <td class="deslabel">Gender</td> <td> <asp:RadioButtonList ID="RadioButtonList1" runat="server" RepeatDirection="Horizontal"> <asp:ListItem Text="Male" Value="Male" /> <asp:ListItem Text="Female" Value="Female" /> </asp:RadioButtonList> <p></p> </td> </tr> <tr align="center"> <td colspan="2"> <asp:Button ID="Button1" CssClass="destext" OnClientClick="value" runat="server" Text="submit"/></td> </tr> </table> </div> </form> </body> </html>
Комментарии:
1. вы включили файл js на страницу html? я не могу найти его в html
2. Да, я включил Jscript.js досье…
Ответ №1:
-
Удалите теги сценария, скопируйте код, например, в
validate.aspx
— поскольку у вас есть ASP в файле, вам нужно выполнить их как код asp -
добавьте
<script src="validate.apsx"></script>
в начало страницы вместе с<script src="jquery.js"></script>
aspx должен будет отправить заголовок для установки типа mime :
<% response.ContentType="text/javascript" %>
$(document).ready(function(){ ...
Альтернатива измените ВСЕ <%=xxxx.UniqueID %>
на xxxx в js, где xxxx — фактический идентификатор поля, и вместо этого включите его как .js
Последняя альтернатива — иметь
<script>
var fieldNames = {
name:"<%=name.UniqueID %>",
password:"<%=password.UniqueID %>",
repassword: "<%=repassword.UniqueID %>",
email:"<%=email.UniqueID %>",
mobile:"<%=mobile.UniqueID %>"
}
</script>
в ASP и есть что-то вроде
$("#form1").validate({
rules: {
fieldNames["name"] : {
required:true
},
в файле JS