我试图强制 colorbox 处理 ajax 响应给出的 html 数组,但它仍然不起作用。
JavaScript 代码:
$.post($('#createForm').attr('action'),{
'id' : 1
},function(data){
var $trash = $('<div>').hide().appendTo('body');
$.each(data, function(i){
$(data[i]).appendTo($trash);
alert(data[i]);
});
$trash.find('div').colorbox({rel:'mygroup', open:true});
}, 'json');
PHP 代码:
$content = '<div class="page" rel="mygroup"><p class="kkk">item1</p></div>';
$content2 = '<div class="page" rel="mygroup"><p class="kkk">item2</p></div>';
$return = json_encode(array($content, $content2));
return new Response($return);
响应是正确的,因为警报工作正常。我需要呈现一个由多个页面组成的 html 文档。
如果有任何帮助,我将不胜感激
最佳答案
您可以完全避免使用 json,将所有页面插入到通用 div 中,如 <div class="container><div class="page" rel="mygroup"><p class="kkk">item1</p></div><div class="page" rel="mygroup"><p class="kkk">item2</p></div></div>
比在 js 部分使用这个:
$.post($('#createForm').attr('action'),{
'id' : 1
},function(data){
var $trash = $('<div>').hide().appendTo('body');
$(data).children().each(function(i){
$(this).appendTo($trash);
alert($(this).html());
});
$trash.find('div').colorbox({rel:'mygroup', open:true});
});
它会提醒 html block 的内部值,但除此之外,它还会满足您的需要
关于php - colorbox 和 html 数组中的 ajax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13058797/