使用jQuery,我尝试将列表项添加到使用" data-autodividers =' true'"定义的无序列表中。在HTML中我的问题是,为什么自动转发器不会出现?
HTML:
<ul id="places" data-role="listview" data-autodividers="true"></ul>
jQuery的:
$.each(json, function(key,val) {
var html = "<li>"+val.city+"</li>";
$('#places').append(html);
$("#places li").trigger('create');
});
答案 0 :(得分:0)
嗯,大约364天后,我自己就在这个问题上招来了。
来自http://demos.jquerymobile.com/1.0/docs/lists/docs-lists.html的解决方案:
更新列表 如果将项目添加到列表视图,则需要在其上调用
refresh()
方法来更新样式并创建添加的任何嵌套列表。例如:
$('#mylist').listview('refresh');
注意,refresh()方法仅影响附加到列表的新节点。这是出于性能原因而完成的。刷新过程将忽略已增强的任何列表项。这意味着如果更改已增强的列表项的内容或属性,则不会反映这些内容或属性。如果要更新列表项,请在调用refresh之前将其替换为新标记。
这里有动态内容和自动分散器列表视图的一个很好的示例http://jsfiddle.net/MauriceG/bwdVh/。
请参阅how to create auto list dividers when dynamically creating a list in jquery mobile以获得类似问题的方式〜更好的答案。