在追加或HTML后刷新Listview

时间:2014-11-04 18:30:33

标签: javascript listview cordova dynamic refresh

我一直在寻找这个问题,但没有人适合我。

我有这个HTML

<div id="divHistorialListView">
     <ul data-role="listview" id="listHistorial">
     </ul>
</div>

这是一个Javascript函数

$("#listHistorial").append("<li><a href='jjj'>hola!</a></li>");
$("#listHistorial").listview();

我多次运行这些功能。第一次运行它格式化listview完美。第二个(以及所有第二个!)格式错误! (像正常的ul或最差)

我也试过了:

$("#listHistorial").listview("refresh");

$("#listHistorial").refresh();

但是当我尝试这些时,javascript中的一些代码不会运行(好像是一个错误而且函数被完全忽略)

我还搜索了JQuery Mobile网站,并说它使用那些......但没有结果!

请帮忙!

2 个答案:

答案 0 :(得分:0)

试试这个

$("#listHistorial").listview().listview("refresh");

答案 1 :(得分:0)

我解决了!

我认为问题在于理解这些方法的作用......在每一篇文章中,我都会读到它“试试这个”或“试试”,但不解释,我们就像疯了一样结束复制。

我要解释我对此的理解:

.listview()//从SCRATCH创建一个LISTVIEW,不与APPEND一起使用。如果列表ALREADY EXISTS不工作,因为它已经创建。

.listview(“刷新”)//刷新现有的LISTVIEW(如果不存在,请不要刷新; D)

所以我最终这样做了:

HTML(预创建EMPTY ListView)

<ul id="myListview" data-role="listview">
</ul>

Javascript(填充ListView)

$("#mylistview").empty(); 
for (bla bla bla)
{
    $("#mylistview").append("<li><a href="">blablalba</a><li>");
}
$("#mylistview").listview("refresh");

这对我有用!