Доступ к jQuery и UserControl Property - PullRequest
1 голос
/ 17 августа 2010

Как я могу получить доступ к свойству asp: userControl с помощью jQuery

$("#<% =ucControl1.ClientID%>").find("[id$='Panel1']").hide();

Я пытаюсь показать asp: Panel с usercontrol, и он не работает.

<div id="ctl00_ContentPlaceHolder1_ctl02_ucControl1_Panel1">

 content....

</div>

jQuery отображается следующим образом:

 $("#ctl00_ContentPlaceHolder1_ctl02_ucControl1").find("[id$='Panel1']").show(); 

Ответы [ 2 ]

2 голосов
/ 17 августа 2010

Если вы установили Visible="false" в пользовательском элементе управления, вы не сможете отобразить его с помощью кода на стороне клиента, поскольку он просто не отображается на стороне сервера (он не является частью получающейся HTML-страницы) .

Вместо этого вы можете оставить Visible="true" на пользовательском элементе управления и поместить его в скрытую оболочку DIV, которую затем можно отобразить на стороне клиента:

<div style="display:none" id="uc1Wrapper">
 <uc1:usercontrol Visible="true" runat="server">...
</div>

...

$("#uc1Wrapper").show();
1 голос
/ 17 августа 2010

Если вы вручную не включите ClientID в качестве идентификатора в отображаемую разметку вашего пользовательского элемента управления, он не будет отображаться (т. Е. ASP.NET не отображает элемент обертывания вокруг пользовательского элемента управления с помощью ClientID).Ваш селектор идентификаторов, вероятно, ничего не находит.

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