Проблема с дублированием идентификатора при загрузке Jquery внешних страниц

#jquery #jquery-selectors

#jquery #jquery-селекторы

Вопрос:

Наша страница загружает две внешние страницы (один и тот же URL) с помощью $("#div1").load(mypageurl) amp; $("#div2").load(mypageurl). Каждый div открывается как диалоговое окно пользовательского интерфейса Jquery при нажатии соответствующих кнопок

Внешняя страница имеет некоторую логику начальной загрузки для выбора внутреннего элемента и установки некоторого значения.

Проблема в том, что, поскольку URL-адрес тот же, идентификатор дублируется, и, следовательно, настройка элемента не работает для диалогового окна, открытого вторым

Если я очищаю первый div $("#div1").html("") каждый раз перед загрузкой второго div, все работает нормально

Есть ли какая-либо другая альтернатива? Могу ли я что-то сделать на своей внешней странице, чтобы ограничить поиск jquery элементов в пределах той же области страницы?

Пинакин

Ответ №1:

Не было бы неплохо очистить его при закрытии, или я что-то упускаю??

 $( ".selector" ).dialog({
   close: function(event, ui) {
      $(this).empty(); 
   }
});
  

Комментарии:

1. Да, это будет более чистым и независимым для каждого диалога

Ответ №2:

Не могли бы вы просто избежать проблемы, заменив все идентификаторы на загруженной странице ссылками на классы вместо этого?

Комментарии:

1. страница независима, заменив идентификаторы, я мог бы что-то сломать