将项目追加到我的列表时,jquery mobile的完整风格已经消失......不知道如何解决这个问题?
目前正在使用:当不附加列表项时,所有样式都可以。
<div class="ui-grid-a">
<div class="ui-block-a" id="blockaid">
<ul id="leftnav" data-role="listview" data-theme="g" data-filter="true" >
<li><a href="index.html">
<img src="images/bb.jpg" />
<h3>Firstname Lastname</h3>
<p>123456789</p>
</a></li>
</ul>
</div>
<div class="ui-block-b">
...
但是如果我开始使用从其他地方读取数据,那么所有样式都会消失:
$(document).ready(function() {
$.ajax({
url: 'test.xml',
dataType: "xml",
success : parse,
error : function (xhr, ajaxOptions, thrownError){
alert(xhr.status);
alert(thrownError);
}
});
function parse(document){
$(document).find("Details").each(function(){
$("#leftnav").append(
'<li>' + '<a href="#">' + '<img src="images/album-xx.jpg" />' +
'<h3>' + $(this).find('Name').text() + '</h3>' +
'<p>' + $(this).find('Number').text() + '</p>' +
'</a>' + '</li>'
);
});
}
});
怎么了?
谢谢!
答案 0 :(得分:10)
好吧,要在新元素上触发自动样式,使用.trigger("create")
应该可以完成这项工作。
请参阅:Is it possible to create element on the fly with jQuery Mobile?
或http://jquerymobile.com/demos/1.0b2/#/demos/1.0b2/docs/pages/page-scripting.html
编辑:$('#leftnav').listview('refresh')
是您要寻找而不是创造的东西。