/ / Fancybox 2 с динамично json съдържание - jquery, json, fancybox

Fancybox 2 с динамично съдържание в json - jquery, json, fancybox

Опитвам се да добавя малко динамично съдържание към aFancybox 2.0 се появява, когато някой кликне върху бутон. Опитах се няколко неща, но не мога да накарам това да работи.

Първо искам да заредя съдържанието на json, когато се натисне бутон и след това да се отвори изскачащото съобщение със съдържанието ...

АКТУАЛНО ВЪПРОСИ ОТ КАКТО НЯМА ДУБЛИКИРАНО

Какво имам:

HTML

<a href="#quick_cart" class="opener cart" id="productid_1234" data-fancybox-href=" url-to-product">Add to cart</a>

Jquery

$(document).ready(function() {

$(".opener").click(function(e){
e.preventDefault();

var url = $(this).data("fancybox-href") + "/?format=json";
console.log(url);

$.fancybox({
type: "inline",
beforeLoad: function (){
quick_cart(url);
}
});
});
});
function quick_cart(url){

$.getJSON(url, function (data){

$("#quick_cart").append("<div>" + data.product.title + "</div>");

});
}

Скриптът зарежда правилния URL адрес за съдържанието на json и запълва скрития div #quick_cart. Проблемът обаче е, че получавам грешка "Заявеното съдържание не може да бъде заредено." Не мога да разбера защо ...

Може ли да е, че "тип: inline" не е прав? Опитах няколко неща и дори изтрих тази линия, но няма късмет. Когато изтрия тази линия, popup не се появява.

Какво аз "аз правя погрешно? Всяка помощ много оценявам.

Отговори:

1 за отговор № 1

Добре, след като буквално извадих цялата ми коса на тази. Така че, за да помогнем на някой друг тук, решението:

Кодът не знае къде да постави генерирания HTML във функцията quick_cart. Затова е достатъчно просто да се използва href атрибута към кода на fancybox. Така:

$.fancybox({
type: "inline",
beforeLoad: function (){
quick_cart(url);
},
href: "quick_cart"
});

Надявам се това да помогне на някого;)