jQuery в ASP.NET UserControl - PullRequest
       43

jQuery в ASP.NET UserControl

4 голосов
/ 08 декабря 2011

Сценарий 1

Страница содержит только пользовательский элемент управления «MultiSelect». Здесь jQuery работает хорошо.

Сценарий 2

Я переместил пользовательский элемент управления «MultiSelect» в проект, где мы используем главные страницы и UpdatePanel. Иерархия страницы:

Главная страница -> Страница содержимого -> Разделить -> MultiSelect пользовательский элемент управления

Здесь jQuery не работает.

О пользовательском управлении MultiSelect

Элемент управления имеет ссылку на файл jQuery и содержит множество сгруппированных флажков. Поэтому, если я нажму на флажок заголовка группы, будут установлены все дочерние флажки.

Мои запросы

  1. Почему jQuery не работает в Сценарии 1?

  2. Где лучше всего связать ссылку с файлом jQuery, на главной странице, на странице содержимого или в самом UserControl.

  3. Я слышал о том, что если мы используем UpdatePanel, нам тоже нужно использовать PageRequestManager.

  4. Написание кода JavaScript в файле Code Behind решит проблемы?


Ну. При использовании jQuery в ASP.NET User Control, мы должны сделать следующее (все шаги не являются обязательными) ..

a. Вы можете написать код в коде файла. Там вы должны использовать PageRequestManager тоже.

b. Вы можете поместить ссылку на jQuery на главной странице.

Ответы [ 2 ]

3 голосов
/ 08 декабря 2011

Может быть, ваш JQUERY находится в конфликте с AJAX Javascript. Если вы поместили наш jquery в usercontrol, проверьте его путь. Если пользователь контролирует одну папку, то путь не должен соответствовать пользовательскому контролю. Путь всегда в соответствии с главной страницей или родительской страницей. Вы можете проверить свою ошибку java-скрипта с помощью Firebug или, если у вас установлена ​​последняя версия Fire Fox, нажмите Ctrl + Shift + K обновите страницу и проверьте, работает ли она, почему она не работает. вы найдете ошибку скрипта Java.

2 голосов
/ 27 июля 2013

У меня есть эта проблема, но с большим количеством испытаний может решить эту проблему.

Лучшее место для определения и импорта файлов css и jQuery на страницах asp и не должно добавляться в ascx (пользовательский элемент управления).

Панель обновления с jQuery и Javascript конфликтует, поэтому, если вы используете jQuery и Javascript в вашем пользовательском контроле так же, как и я, удалить панель обновления, тем не менее, вы можете так:

     <asp:UpdatePanel ID="UpdatePanel1" runat="server" ChildrenAsTriggers="true"   UpdateMode="Always"
RenderMode="Block">

в пользовательском управлении.

И установите Диспетчер скриптов на своей главной странице или странице asp, которая включает пользовательские элементы управления.

В соответствии с вашей справкой по использованию PageRequestManager я стараюсь, но скрипты, сгенерированные для страницы, конфликтуют с панелью обновлений и вызывают ее сбой.

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