2017-09-10 3 views
0

jQuery、jQuery mobile、js、hotml & cssを使用しています。jQuery/jQuery mobile - .append後のページの書式設定

私はインデックスページ

<ul data-role="listview" data-icon="false" data-filter="true" data-filter-placeholder="Search all cards..." data-inset="true" id="menutest"> 

にフィルタリング可能リストを持って、その後、ULわたし外部のhtmlファイルからいくつかの余分なLIさんに持ってjsの中で.append使用。

$.get('menus/menutest.html',function(data) { 
    $('#menutest').append('<li>' + data + '</li>'); 
}) 

重要なのは、着信LIの通常のjqueryフォーマットが削除されていることです。たとえば、 'data-filter-reveal = "true"をULに入れた場合、新しいもの以外はすべてが隠されます。

しかし、フィルタボックスに入力すると、突然すべてが正しくフォーマットされます。フィルタのテキストをクリアしても正しいままです。

アクティブにするフィルタのどの部分がフォーマットを修正するのか分からないので、どうすれば強制的にそれを実行できますか?

+2

: '$( "#のmenutest")リストビュー( "リフレッシュ");'動作するはずです。 – deblocker

答えて

-1

私は、既存のLIにはすべてクラスが割り当てられていましたが、追加されたクラスは割り当てられていないことがわかりました。その後、フィルタがアクティブになると、突然すべてのLIがクラスを持ちます。

私はまだ何がこれを引き起こしたのかわかりませんが、私は必要なことをするように見える以下を追加しました!

$.get('menus/menutest.html',function(data) { 
    $('#menutest').append(data); 
    $("ul#menutest li").addClass("ui-screen-hidden"); 
    $("ul#menutest li").addClass("ui-li-static"); 
    $("ul#menutest li").addClass("ui-body-inherit"); 
}); 
-1

あなたの追加論理にあなたのスタイリングにつながるクラスを含める必要があります。あなたは上記のクラス、そしてあなたの最初のアペンドを考えると、それは次のようになります。APPEND後

$.get('menus/menutest.html',function(data) { 
    $('#menutest').append('<li class="ui-screen-hidden ui-li-static ui-body-inherit">' + data + '</li>'); 
})