Получить идентификатор серверного элемента управления с помощью jQuery

Как получить идентификатор серверного элемента управления с помощью jQuery?

Например, у меня есть

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

и теперь я хочу получить "label1",

var id = ??

6 ответов

Если вы используете ASP.NET 4.0, вы можете установить атрибут ClientIDMode="Static", и ваш код будет выглядеть следующим образом:

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

ЯШ:

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

Вам необходимо получить идентификатор клиента.

Если вам нужен только идентификатор, а не фактическое значение элемента управления, то вам даже не нужен jQuery.

var labelID  = '<%= label1.ClientID %>';
var $lblObj = $("label[id$='label1']:first")

Вы используете главную страницу. Если да, укажите ContentPlaceHolderID вместе с идентификатором элемента управления.

Например:

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

Вы можете увидеть это в Viewsource

jQuery работает на стороне клиента, поэтому будет иметь доступ только к идентификатору элемента html, а не к элементу управления asp на сервере.

Метки отображаются как теги span. Итак, если вы хотите выбрать все метки:

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

        $Labels.each(function()
        {
            alert(this.id); 
        });
    });
Другие вопросы по тегам