2012-07-10 53 views
0

我正在使用Phonegap和JQuery爲Android開發應用程序。其中一項任務是動態地將一些內容添加到列表中。在第一次,當我添加第一個元素並調用.listview()時,一切看起來都很好,但是當我添加一些內容時,它的樣式不能正常工作,並且listview('refresh')和其他命令不會正常工作。根本沒有幫助。我使用的是jquery mobile 1.0a1。這裏是兩個按鈕的代碼:jQuery中的listview('refresh')似乎不起作用

$("#nextDay").click(function(){ 
$("#SheduleList").append('<li><a href="#"><h3 class="ui-li-heading">ololo1</h3></a></li>'); 
$('#SheduleList').listview('refresh'); 
}); 

$("#prevDay").click(function(){ 
$("#SheduleList").append('<li><a href="#"><h3 class="ui-li-heading">ololo</h3></a></li>'); 
$("#SheduleList").listview(); 
}); 

第一個按鈕是「prevButton」。這裏是一些HTML:

<body onload="init();"> 
<div data-role="page"> 
<div data-role="header" data-theme="b"> 
<h1>Расписание группы 04-322</h1> 
<h1 id=hday>День недели</h1> 
</div> 
<div data-role="content" data-theme="b"> 
<ul id="SheduleList"> 
</ul> 
<button id="nextDay">Следующий день</button> 
<button id="prevDay">Предыдущий день</button> 
</div> 
</div> 
</body> 

回答

1

你並不孤單。
這似乎是工作最適合我:

refresh = function (selector) 
{ 
try 
{    
//this may throw an exception: 
// call methods on listview prior to initialization; attempted to call method 'refresh' 
$(selector).listview('refresh'); 
} 
catch (e) 
{ 
} 
} 

refresh("#SheduleList"); 
0

<ul>在HTML中添加data-role="listview"

<ul id="SheduleList" data-role="listview" data-inset="true"></ul>