jQuery-mobile non gioca bene con jQuery-tmpl?
-
27-09-2019 - |
Domanda
C'è qualche motivo per cui lo stesso modello e JavaScript
<script id="taskTemplate" type="text/x-jquery-tmpl">
<li>${name}</li>
</script>
$.getJSON(url, function(data) {
$("#taskTemplate").tmpl(data).appendTo("#tasks");
});
funzionerebbe come documentato con il seguente jQTouch markup:
<ul class="rounded" id="tasks"></ul>
ma risultato nel modello sempre reso al di fuori (dopo) la lista non ordinata con il seguente jquery-mobile markup?
<div data-role="content">
<ul data-role="listview" id="tasks"></ul>
</div><!-- /content -->
Mi rendo conto jquery-mobile è in alpha release, ma ha lavorato bene finora e io preferisco non passare a jQTouch in questa fase. Qualcuno ha visto questo comportamento e ha trovato una soluzione?
Soluzione
È necessario chiamare il metodo di aggiornamento del listview una volta che il template è fatto.
$ ( "yourUl") ListView ( "Refresh."); Nel caso in cui .pagina metodo () non è mai stato chiamato si può decidere di fare qualcosa di simile.
try {
$(yourUl).listview("refresh");
} catch(e){
// Well, nothing to do there
}
Altri suggerimenti
Questo è stato risolto in alpha 2. Vedere qui: http : //jquerymobile.com/demos/1.0a2/#docs/lists/docs-lists.html (scorrere verso il basso per 'aggiornare gli elenchi')
Si dovrebbe essere simile
$("#taskTemplate").tmpl(data).appendTo("#tasks").page();
è necessario il .pagina () alla fine.