【发布时间】:2018-10-31 05:32:57
【问题描述】:
我已经尝试了大约 10 个小时,但无法通过 jquery 刷新我的列表视图。 我正在动态加载一个列表,它不会刷新以获取样式.. 我到底做错了什么。
<div data-role="content" id="content">
<ul id="dataList" data-role="listview" data-autodividers=true" data-filter="true" data-filter-placeholder="Search..." data-inset="true" >
</ul>
</div>
<script type="text/javascript">
$(document).ready(function(){
var $dataList = $("#dataList");
$.getJSON( "starWars.json", (function( data) {
$.each(data, function(i,item){
$dataList.append('<li ><a href="#'+item.name+'" ><img src="images/'+item.pic+'" alt="'+item.name+'"/><h1>'+item.name+'</h1><p>'+item.about+'.</p></a></li> ');
});
}));
})();
</script>
【问题讨论】:
-
这只是异步事件的问题。您无法预测哪个事件会先发生...您应该在 JQM 页面初始化事件中获取 JSON 数据:
$(document).on("pageinit", "#pageId", function(){...然后,您可以刷新 JQM 小部件,因为您知道它已经被实例化了。这是一个例子:stackoverflow.com/a/45021128/4845566
标签: javascript jquery listview jquery-mobile dynamic-loading