我想链接一个<select>
框到JSViews中计算的可观察对象。当依赖变量更改时,<select>
更新正常。但是,在<select>
框中选择新值时,它不会触发我定义的set()函数。见https://jsfiddle.net/4y274h0L/3/JSViews计算observable链接到<select>不更新与.set()
模板
<select>
{{for options}}
<option value="{{:#data}}" data-link="{:#data} selected{:~root.computedSelectedOption() == #data}"></option>
{{/for}}
</select>
计算观察到
function privateComputedOption() {
return vm.tempSelectedOption;
}
privateComputedOption.depends = ["~root.tempSelectedOption"];
privateComputedOption.set = function(val) {
$.observable(vm).setProperty("tempSelectedOption", val);
console.log(val);
};
任何帮助将是非常欢迎!
谢谢!确实如此。在真正的代码中,我仍然使用了对非计算值的旧引用。所以我在select中有一个数据链接,但它是另一个viewmodel属性。 – Laurens