任何人都可以告诉我如何在asp.net嵌套母版页中使用jquery。我有我的主要母版页,我已经添加了链接到jquery libaray以及验证框架。然后我创建了另一个带有一些样式的母版页,并根据该母版页创建了一个aspx页面。
如何将验证框架附加到我页面中的文本框?
我试过了
$("#aspnetForm").validate({
rules: {
<%=txtPostCode.UniqueID %>: {
minlength: 2,
required: true
},
<%=txtContactEmail.UniqueID %>: {
required: true,
email:true
}
}, messages: {
<%=txtPostCode.UniqueID %>:{
required: "* Required Field *",
minlength: "* Please enter atleast 2 characters *"
}
}
});
然而没有任何反应。有人能指出我正确的方向吗?
答案 0 :(得分:1)
您可以编写将ID传递给jQuery函数的包装器方法,并在子页面上使用RegisterStartupScript
或内联JS调用这些方法:
使用Javascript:
function makejQueryOnMangledNamesLessPainful(firstSelector, secondSelector)
{
$(firstSelector).whatever();
}
的.aspx:
<script>
makejQueryOnMangledNamesLessPainful('#<%=Thing.ClientID%>',
'<%=OtherThing.GetClientSelector()%>);
</script>
其中GetClientSelector
返回一个字符串,它是一个选择器,或者只是一个ID或者可能是一些服务器派生的类。或其他任何事情,真的。
答案 1 :(得分:0)
因为ASP.NET会破坏ID,所以最好的办法就是为服务器控件设置CSS类并以这种方式访问它们:
<asp:textbox id="Text1" cssclass="myText" runat="server" />
$('.myText').whatever();
这不是效率最高的JS,因为你是按类而不是ID来选择的,但是它会让你在试图处理WebForms中的ASP.NET错位ID时免于麻烦。