#jquery #ajax #colorbox
#jquery #ajax #colorbox
Вопрос:
Здравствуйте, у меня возникла небольшая проблема с интеграцией colorbox, тогда вот что, у меня есть код, который загружает данные в список, после загрузки данных я могу просто нажать на заголовок, чтобы отредактировать форму редактирования, которая будет загружена этим плагином colorbox, пока здесь все в порядке, после закрытия colorbox он снова перезагружает данные, и если вы попытаетесь отредактировать другой элемент, он не допустит эту ошибку :
$.colorbox is not a function
[Parar Neste Erro] onClosed: function () {
Мой текущий код таков :
$("a[href*='#tabsDadosSoftware']").click(function () {
CarregarDadosSoftware();
});
function CarregarDadosSoftware() {
$.ajax({
url: 'ajax/Software.php',
cache: false,
data: "acc=Visualizaramp;idpc=<?php echo (int)$_GET["id"]; ?>",
type: 'GET',
contentType: "application/x-www-form-urlencoded; charset=utf-8",
beforeSend: function () {
$('div#ListagemSoftware > div.Informacoes .load').show();
$('div#ListagemSoftware > div.Informacoes > ul').html("");
},
success: function (result) {
$('div#ListagemSoftware > div.Informacoes .load').hide();
$('div#ListagemSoftware > div.Informacoes > ul').html(result)
}
});
}
$("div#ListagemSoftware > div.Informacoes > ul > li > .titulo").live('click', function () {
var IDSoftware = $(this).parent().attr("id");
$.colorbox({
href: "ajax/Software.php?acc=Editaramp;idpc=<?php echo (int)$_GET["id"]; ?>amp;id=" IDSoftware,
onClosed: function () {
CarregarDadosSoftware();
}
});
});
А теперь выложите видео на YouTube с демонстрацией ошибки
http://www.youtube.com/watch?v=AXOG5nec8_M
Приветствую
Ответ №1:
Я бы поставил на то, что либо это: url: ‘ajax/Software.php ‘,
Или это: href: «ajax/Software.php?acc=Editaramp;idpc=amp;id=» idSoftware
Открывает файл, содержащий блок скрипта, указывающий на jQuery. Поскольку вы используете ajax (вместо того, чтобы изолировать его с помощью iframe), недавно загруженная версия jQuery заменяет версию jQuery вашего исходного документа. Эта первая версия jQuery была расширена с помощью плагина colorbox, при его замене $.colorbox теряется.
Поскольку у вас уже есть jQuery в исходном документе, вам не нужна другая копия в разметке, которую вы загружаете через ajax.