我试图让一个列表视图填充“pageshow”上的数据。使用 Javascript 和 JQM 1.3.2。我的 html 部分是我的页面
<div data-role="page" data-theme="b" id="listPlaces">
<div data-role="header" data-position="fixed">
<h4>Header</h4>
</div>
<div data-role="content">
<div class="content-primary" id="content-primary"></div>
</div>
<div data-role="footer"><h4>Footer</h4></div>
我正在调用外部 javascript:
$(document).off("pageinit", "#listPlaces");
$(document).on("pageinit", "#listPlaces", (function parseData(){
var output = '', val;
var output = '<ul data-role="listview" data-autodividers="true" id="listOfPlaces">';
for (val in localStorage) {
if (localStorage.hasOwnProperty(val)) {
place = JSON.parse(localStorage[val]);
output += '<li><div data-role="collapsible">' + '<a href="placeDetail.html?place=' + place["name"] + '">' + place["name"] + '</a><br /><span style="font-size:10px;padding-left:20px">' + place["address"] + '</span><div></li>'
}
}
output += '</ul>';
return output;
}));
$(document).on("pageshow", "#listPlaces", (function() {
alert('in pageshow');
var div = $('#content-primary');
div.output(parseData());
div.find('ul').listview();
}));
我看到“in pageshow”警报,但未定义 parseData()。我不知道如何解决这个问题。当我将输出发送到 console.log 时,它看起来很好,我可以将它复制到另一个文件中并让它正确显示。
任何帮助表示赞赏。我是在这个网站上发帖的新手,所以我试着遵守规则。如果我做错了什么,请提前道歉。我也搜索了该站点并找到了这个答案如何在 jquery mobile 中将样式更新为列表视图?这有帮助,但我仍然坚持这个 pageshow 功能。谢谢