2013-01-10 111 views
0

不工作我用這個終於得到optgroups與淘汰賽的工作:「值」結合與OPTGROUP在淘汰賽

<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> 

這個數據與tbodyselect內是:

<td><input type="text" data-bind="value: userName" /></td> 

我以同樣的方式訪問包含用戶名和SELECTEDCOUNTRY(你可以看到)。兩者都是用戶對象的屬性。我100%肯定selectedCountry是正確的財產。當我切換userName和selectedCountry時,我得到了<input type="text">中的selectedCountry。

+1

似乎是工作的罰款,這** [的jsfiddle(http://jsfiddle.net/JmC3d/)**。你確定'selectedCountry'屬性是正確的嗎?另外,你能否提供JSFiddle /修改我的實際問題? – MarcoK

+0

我無法讓它在JSFiddle中工作...太多的周邊代碼。但問題是我已經在循環中(請參閱第二個代碼片段中的)。所以我沒有在示例中引用與您在同一級別上的selectedValue。我試圖在我正在循環的'用戶'中訪問它。這適用於其他元素。我會更新我的問題以包含一個小例子。 – Sherlock

+0

固定。 :) 謝謝。 – Sherlock

回答

0

Ooooooh,我很愚蠢。

<option data-bind="text: label"></option> < - 那裏我沒有約束任何價值。因此,這是解決辦法:

<option data-bind="text: label, value: label"></option>