Javascript 淘汰选择字段错误数据绑定
我想使用Knockout创建一个下拉列表。这是我的选择: 我不明白为什么我的选择字段的“值”只有在我更改选择并且在第一次加载时不起作用时才起作用。我会直接定位“Misure”(选项中的ObservableArray)元素,我总是有空白。代码如下:Javascript 淘汰选择字段错误数据绑定,javascript,knockout.js,Javascript,Knockout.js,我想使用Knockout创建一个下拉列表。这是我的选择: 我不明白为什么我的选择字段的“值”只有在我更改选择并且在第一次加载时不起作用时才起作用。我会直接定位“Misure”(选项中的ObservableArray)元素,我总是有空白。代码如下: self.MisuraLaboratorio = ko.observable(); self.MisuraLaboratorio = function () { if (self.Indicazione() != null) {
self.MisuraLaboratorio = ko.observable();
self.MisuraLaboratorio = function () {
if (self.Indicazione() != null) {
for (i = 0; i < self.Misure().length; i++) {
if (self.Indicazione().Misura.Id == self.Misure()[i].Id) {
var data = self.Misure()[i];
return data;
}
}
}
return " ";
};
self.MisuraLaboratorio=ko.observable();
self.MisuraLaboratorio=函数(){
如果(self.indicatione()!=null){
对于(i=0;i
当您要设置一个可观察对象时,您希望将其作为一个函数调用,其值如下:
self.MisuraLaboratorio(yourValue);
看起来您正在用一个查找您的值的函数覆盖它。当您要设置一个可观察对象时,您希望将其作为一个具有如下值的函数调用:
self.MisuraLaboratorio(yourValue);
看起来您正在使用一个查找您的值的函数来覆盖它。如果我使用follow方法,工作正常,但是当我更改select上的元素时,我有未定义的元素。为什么?value:MisuraLaboratorio()和value:MisuraLaboratorio之间的区别是什么。为什么第一次我可以查看初始元素而不是其他元素,但第二次我无法查看第一个元素,但其他选定元素是好的?我不明白当你做双向绑定时,比如用
值
绑定,你只需要传递可观察的。如果您传递MisuraLaboratorio()
,那么它将只是最终值,绑定将无法返回到可观察对象(以便它可以写入)。谢谢你,我这样解决:代码是:self.MisuraLaboratorio=ko.computed(function(){var idMisura=0;If(self.indicatione()!=null){for(i=0;i值
绑定,你只需要传递可观察的。如果您传递MisuraLaboratorio()
,那么它将只是最终值,绑定将无法返回到可观察对象(以便它可以写入)。谢谢你,我这样解决:代码是:self.MisuraLaboratorio=ko.computed(function(){var idMisura=0;If(self.indicatione()!=null){for(i=0;i