2012-03-22 60 views
2

我試圖從數據庫中動態生成列表。結果可以被檢索,但是,jquerymobile樣式和數據角色屬性似乎丟失了。我看到一個醜陋的列表,而不是很好的呈現的列表:phonegap jquerymobile問題:動態生成列表項時丟失樣式

我試圖用最簡單的列表項重現它:

在我的index.html,我有:

<ul data-role="listview" data-theme="d" data-divider-theme="d" data-inset="true" id="thisweekexpenselist"></ul> 

在JavaScript文件,我有

function getExpenselist_success(tx, results) { 
$('#busy').hide(); 
var len = results.rows.length; 
for (var i=0; i<len; i++) { 
    var expense = results.rows.item(i); 
    $('#thisweekexpenselist').append('<li>Test Simplest</li>'); 
} 
db = null; 

}

這並不正確渲染的。

+0

爲了給你一個想法是什麼樣子,看到這樣的畫面:http://dl.dropbox.com/u/25220312/jquery.PNG。以上是動態生成的。忘記中間兩個列表項,最後一項「測試最簡單」被硬編碼到列表中。 – Yang 2012-03-23 00:12:23

回答

5

嘗試在getExpenselist_success()函數的末尾調用$('#thisweekexpenselist').listview('refresh');

+0

作品!爲什麼是這樣??? – Yang 2012-03-23 00:21:25

+0

因爲Jquery Mobile之後的附加數據正在格式化您的列表。該方法重新創建列表視圖。 – codaniel 2012-03-23 00:23:49

+0

很高興知道! – Yang 2012-03-23 00:31:18

1

這有助於:

$(document).bind('pagechange', function() { 
    $('.ui-page-active .ui-listview').listview('refresh'); 
});