1

我试图强制 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 文档。

我将不胜感激任何帮助

4

1 回答 1

1

你可以避免使用 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块的内部值,但除此之外会做你需要的

于 2012-11-07T09:11:26.270 回答