0

私のコード:

$('#cars').live('pageinit',function() {
    var msg = "";
    $.ajax({
        url: 'http://192.168.23.20/php/getcar.php',
        dataType: 'jsonp',
        jsonp: 'jsoncallback',  
        success: function(data){
        msg += '<div data-role="collapsible-set">';
            $.each(data, function(i,v){
                msg += '<div data-role="collapsible">';
                msg += '<h3>'+v.carName+'</h3>';
                msg += '<p>'+v.cardesc+'</p>';
                msg += '</div>';
            });
        msg += '</div>';
        $(".car").after(msg);
        }
    });         
});

出力は、JQMアコーディオンではなくプレーンテキストとして表示されます。pageinitでJQMアコーディオンを実行するための回避策はありますか?

4

1 に答える 1

1

アコーディオンリストを動的に作成したり、動的に変更したりする場合は、その特定のアコーディオンを更新して、達成できるJQMスタイルと効果を取得する必要があります。$('.selector').collapsibleset('refresh');

これ(テストされていない)があなたのために働くかもしれません。

$accordion_div = $('<div data-role="collapsible-set"></div>');
msg = ""
$.each(data, function(i,v){
  msg += '<div data-role="collapsible">';
  msg += '<h3>'+v.carName+'</h3>';
  msg += '<p>'+v.cardesc+'</p>';
  msg += '</div>';
});
$accordion_div.html(msg);
$accordion_div.appendTo(".car").collapsibleset('refresh');
于 2012-04-07T07:26:30.947 に答える