在jquery mobile中使用for循环将<li>添加到<ul>

Mar*_*zek 2 markup jquery jquery-mobile jquery-mobile-listview

我在我的应用程序中使用$ .get()来检索设施名称列表.然后我想将它们作为jquery mobile中的列表项插入到已存在的列表项中.当我在html中添加一个元素时,它看起来没问题,但是当我使用for循环时,结果没有任何样式效果.

http://jsfiddle.net/mkamyszek/YDFZ3/1/

<div data-role="page">
            <div data-role="header">
                <h1>My Title</h1>
            </div><!-- /header -->

            <div data-role="content">
                <ul data-role="listview" data-inset="true" data-filter="true" id="fieldList">
                    <li>Test</li>
                </ul>
            </div><!-- /content -->

        </div><!-- /page -->
Run Code Online (Sandbox Code Playgroud)

循环输出正确的信息,但由于某种原因,当我使用循环时样式不适用:

for (i=0; i<=5; i++){
$("ul").append("<li>something" + i + "</li>");
Run Code Online (Sandbox Code Playgroud)

}

Gaj*_*res 6

这是因为您需要在添加新内容后重新设置列表视图.

像这样做:

$('#listviewID').listview('refresh');
Run Code Online (Sandbox Code Playgroud)

有时当listview是动态生成的时候,它会要求你在它被设置样式之前初始化它,所以在这种情况下使用这个:

$('#listviewID').listview().listview('refresh');
Run Code Online (Sandbox Code Playgroud)

工作示例:http://jsfiddle.net/Gajotres/LrAyE/

这是你的例子中的一个工作示例:http://jsfiddle.net/Gajotres/HuKab/