当我使用需要 ID 的 jquery 时,如何解决 ASP.NET 自动生成 ID 的问题?
我正在使用 jquery 流行的验证插件来验证我的所有字段。当输入字段未在服务器上运行并因此不重命名输入的所有 ID 和名称时,此功能非常有效。
我想知道是否有不同的方法来选择 jquery 中的输入,以便我仍然可以使用该插件。 jquery如下:
<script type="text/javascript">
jQuery.validator.messages.required = "";
$(document).ready(function () {
$('#form1').validate({
rules: {
firstName: {
required: true,
},
}
});
});
目前,如果我使用
,则 ID 为“ContentPlaceHolderBody_firstName”,名称为“ctl00$ContentPlaceHolderBody$firstName”。
我什至尝试替换 jquery 中的名称以反映 ID 和名称,但无济于事。
解决这个问题的最佳方法是什么?我可以添加一个班级并以这种方式选择吗?如果是这样,jquery 选择器会是什么样子?
任何帮助表示赞赏!谢谢!
I'm using jquery's popular Validate plugin to validate all my fields. This works great when the input fields are not running at server and thus not renaming all the IDs and Names for the input.
I'm wondering if there is a different way to select the input in the jquery so I can still use the plugin. The jquery is below:
<script type="text/javascript">
jQuery.validator.messages.required = "";
$(document).ready(function () {
$('#form1').validate({
rules: {
firstName: {
required: true,
},
}
});
});
Currently, if I use an <asp:TextBox.../>
the ID comes out to "ContentPlaceHolderBody_firstName" and the name comes out to "ctl00$ContentPlaceHolderBody$firstName".
I even tried replacing the name in the jquery to reflect both the ID and the name to no avail.
What is the best way around this? Can I add a class and select that way? And if so, what would the jquery selector look like?
Any help is appreciated! Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
您可以编写一些内联服务器端代码,例如:
You can write some inline server side code like:
转到 asp.net 4.0
http://weblogs.asp.net/scottgu/archive/2010/03/30/cleaner-html-markup-with-asp-net-4-web-forms-client-ids-vs- 2010-and-net-4-0-series.aspx
Go to asp.net 4.0
http://weblogs.asp.net/scottgu/archive/2010/03/30/cleaner-html-markup-with-asp-net-4-web-forms-client-ids-vs-2010-and-net-4-0-series.aspx
将 ClientIDMode 属性设置为静态
http://msdn.microsoft.com/en-us /library/1d04y8ss.aspx
Set the ClientIDMode property to static
http://msdn.microsoft.com/en-us/library/1d04y8ss.aspx
类的 jquery 选择器是 $(".classname)
The jquery selector for a class would be $(".classname)
在
.net 4.0
中,您可以设置ClientIDMode="static"
并具有可预测的控件 ID,例如
在 javascript 端你可以有你选择的 id
in
.net 4.0
you can set set theClientIDMode="static"
and have predictable control idse.g.
and in javascript side you can have the id of your choice
将类添加到您的 asp 控件,然后选择该类而不是 ID
Add a class to your asp control and then select on that class instead of the ID