使用jQuery检索服务器控件的ID

时间:2011-04-14 15:54:57

标签: jquery asp.net servercontrols

如何使用jQuery获取服务器控件的ID?

E.g。我有

<asp:Label ID="label1" runat="server""></asp:Label>

现在我想得到“label1”,

var id = ??

6 个答案:

答案 0 :(得分:11)

如果您使用ASP.NET 4.0,您可以设置属性ClientIDMode =“Static”,您的代码将按照以下方式进行:

<asp:Label ID="label1" runat="server" ClientIDMode="Static"></asp:Label>

JS:

var id = 'label1';

答案 1 :(得分:9)

var labelID = $('#<%= label1.ClientID %>');

您需要获取客户端ID。

如果您只需要ID,而不是控件的实际值,那么您甚至不需要jQuery。

var labelID  = '<%= label1.ClientID %>';

答案 2 :(得分:3)

var $lblObj = $("label[id$='label1']:first")

答案 3 :(得分:0)

jQuery在客户端运行,因此只能访问html元素的ID而不是服务器上的asp控件。

答案 4 :(得分:0)

您使用的是母版页吗?如果是,则将ContentPlaceHolderID与控件ID一起提供。

例如:

 jQuery("#ContentPlaceHolderID_ControlId").val;
   jQuery("#body_label1").text;

你可以在Viewsource

中看到这个

答案 5 :(得分:-1)

标签呈现为span标签。因此,如果您想选择所有标签:

    $(document).ready(function()
    {
        $Labels = $("span");

        $Labels.each(function()
        {
            alert(this.id); 
        });
    });