Как легко получить идентификатор клиента ContentPlaceHolder? - PullRequest
1 голос
/ 01 апреля 2009

Мне нужно добавить вызовы JavaScript в некоторые атрибуты элементов управления, я использую главные страницы, но для того, чтобы получить идентификатор клиента contentplaceholder, я перебираю элементы управления формами. Есть ли другой способ получить на стороне сервера код страницы содержимого?

 foreach (Control control in this.Form.Controls)
                {
                    if (control is ContentPlaceHolder)
                    {
                        contentPlaceHolderID = control.ClientID;
                        break;
                    }
                }

Ответы [ 2 ]

2 голосов
/ 01 апреля 2009

Если таких элементов управления мало, вы можете установить глобальную переменную:

var contentPlaceholderId = '<%= this.ContentPlaceholder1.ClientId %>'
0 голосов
/ 01 апреля 2009

Я делаю следующее в jQuery:

$("*[id$='DivFullWarning']").each(function() {
  // do whatever in here
});

при этом выполняется поиск любого элемента управления, содержащего DivFullWarning в их идентификаторе, поэтому вы можете назвать свой ContentPlaceHolder "contentPlaceHolder", а затем, независимо от того, сколько гадости asp.net с вашим идентификатором, вы все равно сможете получить его на стороне клиента.

Вы можете просто разместить контент placeHolder где-нибудь, чтобы вам не нужно было перебирать все элементы управления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...