我使用jquery流行的Validate插件来验证我的所有字段。当输入字段没有在服务器上运行,因此没有重命名输入的所有id和name时,这工作得很好。
我想知道是否有一种不同的方式来选择jquery中的输入,所以我仍然可以使用插件。jquery在下面:
<script type="text/javascript">
jQuery.validator.messages.required = "";
$(document).ready(function () {
$('#form1').validate({
rules: {
firstName: {
required: true,
},
}
});
});
目前,如果我使用一个<asp:TextBox.../>
的ID出来"ContentPlaceHolderBody_firstName"和名称出来"ctl00$ContentPlaceHolderBody$firstName"。
我甚至尝试在jquery中替换名称以反映ID和名称,但无济于事。
解决这个问题的最好方法是什么?我可以添加一个类并以这种方式选择吗?如果是的话,jquery选择器会是什么样子?
任何帮助都是感激的!谢谢!
您可以编写一些内联的服务器端代码,如:
$('#form1').validate({
rules: {
<%= txtFirstName.ClientID %>: {
required: true,
},
}
});
转到asp.net 4.0
http://weblogs.asp.net/scottgu/archive/2010/03/30/cleaner - html标记- - asp -网- 4 - web -形式客户机id - vs - 2010和-网- 4 - 0 - series.aspx
设置ClientIDMode属性为static
http://msdn.microsoft.com/en-us/library/1d04y8ss.aspx类的jquery选择器为$(".classname)
在.net 4.0
中,您可以设置设置ClientIDMode="static"
并具有可预测的控制id
。
<asp:Label ID="Label1" runat="server" ClientIDMode="static" />
在javascript中,你可以选择你的id
$("#Label1").hide();
为asp控件添加一个类,然后选择该类而不是ID