Javascript 可观测覆盖toString()

Javascript 可观测覆盖toString(),javascript,select,knockout.js,tostring,observable,Javascript,Select,Knockout.js,Tostring,Observable,我正在用“值”绑定将KnockoutJS observable(跟踪整个对象)绑定到select标记,我想知道是否可能以某种方式获得所选observable的文本表示 下面是我绑定到的一个示例对象 var dogObject = ko.observable({ Property1 = ko.observable(), Property2 = ko.observable(), . . . }) 这是选择标签: 代码中已经包含了执行此操作的选项:使用选项text指定哪

我正在用“值”绑定将KnockoutJS observable(跟踪整个对象)绑定到select标记,我想知道是否可能以某种方式获得所选observable的文本表示

下面是我绑定到的一个示例对象

var dogObject = ko.observable({
   Property1 = ko.observable(),
   Property2 = ko.observable(),
   .
   .
   .
})
这是选择标签:


代码中已经包含了执行此操作的选项:使用
选项text
指定哪个属性是对象的toString表示形式

您的问题中几乎没有代码,但您目前似乎只使用了一个可观察对象。如果你想创建一个组合了几个代码的<代码> toStase,你可以考虑使用一个可计算的可观察的。如果您有适当的视图模型和构造函数或其他形式的继承,这是最简单的。下面是一个例子:

var Dog=函数(数据){
var self=这个;
自属性1=可观察的ko(数据p1);
自属性2=可观察的ko(数据p2);
self.toString=ko.computed(函数(){
返回self.Property1()+“”+self.Property2();
});
};
ko.applyBindings({
收藏对象:ko.observearray([
新狗({p1:“德语”,p2:“谢泼德”}),
新狗({p1:“俄语”,p2:“雪狗”})
]),
dogObject:ko.可观察(空)
});


包括一些代码。您查看的模型是什么样子的?你的装订是什么样子的?你读过淘汰文档了吗?看一看-你可以写一个文档,它将在你的observable中返回对象的文本表示,并在基础内容发生变化时更新绑定到它的任何内容。或者在你的对象本身上做一个可观察的属性,如果必要的话,也可以计算。@MattBurland是的,我已经阅读了文档。由于我找不到符合我要求的解决方案,我在这里发布了一个问题。@JamesThorpe是正确的(应该把这个评论变成一个答案)。目前,您已经将<代码> PrimeTys<代码>作为对象的文本表示,至少在您的代码>上下文中选择< /代码>,您可以引入一个<代码> ASTXEX/CODE >可计算的来接管该特性。@ Jeroen,我回到Mo You-Feld的中间部分,您将得到我的投票……