答案 0 :(得分:1)
您实际上没有将select数据链接到计算的observable。对于双向绑定,它是select的绑定,当用户更改下拉选择时将调用setter。
<select data-link="computedSelectedOption()">
{{for options}}
<option value="{{:#data}}"
data-link="{:#data} selected{:~root.computedSelectedOption()==#data}">
</option>
{{/for}}
</select>
{^{:computedSelectedOption()}}
我更新了上面的jsfiddle:
https://jsfiddle.net/4y274h0L/4/
请参阅示例http://www.jsviews.com/#samples/form-els/array-binding。
BTW在JsViews的下一次更新中将会简化,你不需要在选项上数据链接到selected{:~root.computedSelectedOption()==#data}"
。只需选择<select data-link="computedSelectedOption()">
上的数据链接即可。