JavaScript (colorbox) не работает в загруженном контенте с помощью .load () jquery

Я нашел некоторый связанный вопрос, к сожалению, я не мог исправить свой код.

Коротко: —
— У меня есть форма в окне «Colorbox», когда я отправляю форму, я перезагружаюсь .. div id = «reload» .. в родительском окне для отображения новых отправленных данных.
— родительское окно успешно обновлено и новые данные загружены.

Вопрос: —
После загрузки новых данных в родительское окно через .load .. URL-адреса с классом «Colorbox» не работают как ссылки «Colorbox» (работают как обычные ссылки — открываются на полной странице).
— Эти ссылки работают правильно перед .load () новыми данными
— Мне нужно, чтобы эти ссылки открывались с помощью «Colorbox» после .load

1. Родительская страница:

            <script>
$(document).ready(function ()
{
$(".popup_class1").colorbox({iframe:true, innerWidth:1100, innerHeight:550,
overlayClose:true
});

});
</script>

<div id='reload'>
<!-- data to be reloaded after submitting the form in the colorbox window -->
<a href='sales_cc_item_edit.php?id_cci=$id_cci' class='popup_class1'>EDIT</a>
</div>

2. Страница Colorbox:
На этой странице есть форма … после отправки формы AJAX успешно имеет код для перезагрузки div на родительской странице.

            <script>
$(function() {
$.ajax({
url: "sales_action.php",
type: "post",
data: $(this).serialize(),
success: function () {

parent.$('#reload').load(parent.document.URL + ' #reload');

}
});
});
</script>

Ваша помощь высоко ценится.

0

Решение

После загрузки () вам необходимо повторно инициализировать colorbox для вновь созданного «.popup_class1».
Также добавьте «.popup_class1» для загрузки ссылки, так как без него у вас будет двойной #reload в родительском элементе.

Попробуй это:

parent.$('#reload').load(parent.document.URL + ' #reload .popup_class1',
function(){
parent.$(".popup_class1").colorbox({iframe:true, innerWidth:1100, innerHeight:550,overlayClose:true});
});
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]