我想动态更改(单击事件)jQueryMobile 列表视图中列表项的数据主题。Firebug 显示更改已执行,但列表未刷新。(如果我添加元素它可以工作,但属性更改列表不会被刷新。)例如,我想在单击项目时将数据主题从 c 更改为 f。
我尝试了我在这个论坛上阅读的所有内容,从触发器('mouseout')到触发器('create')到父母刷新整个页面,但根本没有效果,所以我想我看不到明显的东西。也许有人可以给我一个提示...... :)
<script>
function fillList() {
var li = '<li data-theme="c"><a href="#" class="info">List item</a></li>';
$("#alist").empty().append(li).promise().done(function () {
$(this).off("click").on("click", ".info", function (e) {
e.stopImmediatePropagation();
e.preventDefault();
var theLiElem = $(this).closest('li');
theLiElem.attr('data-theme','f').trigger('mouseout');
theLiElem.trigger("create");
});
$(this).listview("refresh");
});
}
$(document).on("pageinit", "#info-page", function () {
fillList();
});
</script>
<div data-role="page" id="info-page">
<div data-role="content">
<ul data-role="listview" id="alist" data-inset="true">
</ul>
</div>
</div>
亲切的问候,
史蒂夫