当我使用需要 ID 的 jquery 时,如何绕过自动生成 ID asp.net?



我使用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

最新更新