私はついにこれを使用してKnockoutで動作するoptgroupsを取得しました:
<select data-bind="foreach: $root.countries, value: selectedCountry">
<optgroup data-bind="attr: {label: label}, foreach: children">
<option data-bind="text: label"></option>
</optgroup>
</select>
これは、大陸ごとにグループ化されたすべての国のリストを示しています。しかし、selectedCountryを機能させることができません。ここで何が欠けていますか?
記録のために:selectedCountryは'user'(ユーザーが住んでいる国)のプロパティです。これを使用してすべてのユーザーをループします:
<tbody class="sortable user_div" data-bind="sortable: { data: form.users }">
<!-- Here a <tr> and all form elements, including the <select> above -->
</tbody>
tbody
これは、同じ範囲内で機能しますselect
。
<td><input type="text" data-bind="value: userName" /></td>
同じ方法でuserNameとselectedCountryの両方にアクセスしています(ご覧のとおり)。どちらもUserオブジェクトのプロパティです。私は100%ポジティブですselectedCountryは正しいプロパティです。userNameとselectedCountryを切り替えると、でselectedCountryが取得されます<input type="text">
。