質問

同じテンプレートとjavascriptがある理由はありますか

<script id="taskTemplate" type="text/x-jquery-tmpl">
  <li>${name}</li>
</script>

$.getJSON(url, function(data) {       
  $("#taskTemplate").tmpl(data).appendTo("#tasks");
});

次のJQTouchマークアップで文書化されているように機能します。

<ul class="rounded" id="tasks"></ul>

しかし、次のjQuery-mobileマークアップを使用して、テンプレートが外にレンダリングされます(後)順序付けられていないリストがありますか?

<div data-role="content"> 
  <ul data-role="listview" id="tasks"></ul>
</div><!-- /content -->

JQuery-MobileがAlphaリリースにあることに気付きましたが、これまでにうまく機能しているので、この段階でJQTouchに切り替えたくないと思います。誰かがこの動作を見て、回避策を見つけましたか?

役に立ちましたか?

解決

テンプレートが完了したら、ListViewの更新方法を呼び出す必要があります。

$( "yourul")。listView( "refresh"); .page()メソッドが呼び出されたことがない場合、このようなことをしたいかもしれません。

    try { 
        $(yourUl).listview("refresh");
    } catch(e){
        // Well, nothing to do there
    } 

他のヒント

これはアルファ2で修正されています。 http://jquerymobile.com/demos/1.0a2/#docs/lists/docs-lists.html (「リストの更新」まで下にスクロールします)

それは次のように見えるはずです

$("#taskTemplate").tmpl(data).appendTo("#tasks").page();

最後に.page()が必要です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top