0

HTML:

<p>Order</p>
<div>
<ul data-role="listview" id="myorder"></ul>
</div>

JS:

itemName = ["beer1", "beer2", "beer3", "beer4"];
itemQty = [0, 2, 0, 4];

for ( var i=0, len=itemName.length; i<len; ++i) { 
    if (itemQty[i] > 0) {
        var listItem = document.createElement("li");
        listItem.innerHTML = itemName[i] + "    Qty:" + itemQty[i];
        $('#myorder').append(listItem);
        $('#myorder').listview('refresh');
    }
}

私はそれが私を正面から見つめていることを知っていますが、なぜこれは私の最初のインスタンスだけを示しているのQty > 0ですか?

http://jsfiddle.net/Sptx7/

4

1 に答える 1

1

ここでエラーが発生します:

$('#myorder').listview('refresh');

なので、コードは終了しますlistviewundefined


コメントアウトされたその行のフィドルは次のとおりです:http://jsfiddle.net/Sptx7/2/

ご覧のとおり、両方のリストアイテムがレンダリングされます。

于 2013-01-22T00:25:40.993 に答える