1

シングルページアプリケーションでdbからULにデータをバインドするためにノックアウトjsを使用しています。以下は私のコードです

<ul data-role="listview" data-divider-theme="b" data-inset="true" data-bind="foreach: Contacts" >
<li data-role="list-divider" role="heading">
Criteria Selected
</li>
<li data-theme="c">
<a href="#page3" data-transition="slide" data-bind="attr: { title: ContactID }">
<span data-bind="text: FirstName + ' ' + LastName + ' (' + Classification +':'+ Position+ ')'"></span>
 </a>
 </li>

その正常に動作します。db からのデータが 300 近くあり、UL へのバインドに成功したとします。

しかし、私の問題は、データごとにヘッダーテキストが「選択された基準」として表示されることです.300個のデータの場合、300個のヘッダーテキストとデータが表示されます。1 つのヘッダー テキストのみが必要で、その下に db からのすべてのデータが表示されます。

どこで変更する必要があるか教えてください。

4

1 に答える 1

2

foreachバインディングは、それが使用されている要素のコンテンツ全体を複製します。目的の効果を得るには、仮想要素を使用する必要があります。

<ul>
   <li>Criteria selected</li>
   <!-- ko foreach: Contacts -->
   <li>
       <span data-bind="text: firstName"></span>
   </li>
   <!-- /ko -->
</ul>
于 2013-08-14T09:15:35.517 に答える