很明显,这是一个时间问题。我有一个正在开发的 jQuery 移动应用程序。我正在执行将项目附加到列表视图的标准方法。refresh
然后在附加项目后调用。是的,我在 html 的头部有 jQuery 和 jQuery mobile,是的,我使用的是'pageinit'
事件而不是$(document).ready()
. 以下是来源:
JS
GetApps: function () {
$('#manage-apps-list').empty();
$.get('../../../config.xml', function (data) {
$(data).find('app').each(function () {
var $this = {};
$this = $(this);
$('#manage-apps-list').append(
$('<li/>').append(
$('<a/>').attr('href', "#app-settings").attr('data-id', $this.find('id').text()).html($this.find('title').text()).off('click').on('click', function () {GetAppDetail($(this).attr('data-id'));})
)
);
});
});
$('#manage-apps-list').listview('refresh');
}
的HTML
<div id="manage-apps" data-role="page" data-theme="d">
<div data-role="content">
<a href="#settings" data-role="button" data-mini="true" data-inline="true">Back</a>
<h2>Manage Apps</h2>
<ul id="manage-apps-list" data-role="listview" data-inset="true"></ul>
</div>
</div>
这不是要看到的初始页面,而是一个子页面。结果如下:
我在我的应用程序中做了很多很多次,它总是可以正常工作。我什至使用相同版本的$
和$.mobile
我在 SO 上看到了很多关于此的其他问题,但他们都错过了refresh
...