这是我的HTML代码:
<textarea name="Question" id="Question" data-bind="value:questionObj.questionText></textarea>
这是我的JavaScript代码:
questionObj = {
questionText: ko.observable(' '),
title: ko.observable(' ')
};
questionText数据绑定到文本区域,并且该值都是双向可见的。我希望questionObj.title在questionObj.questionText内部获得相同的值。有没有办法同样绑定?
答案 0 :(得分:0)
您的意思是您希望两个可观察值具有相同的值?您可以为此使用pureComputed。
像这样更改您可观察的定义:
questionObj = {
questionText: ko.observable(' ')
};
questionObj.title = ko.pureComputed(function(){
return questionObj.questionText();
}, questionObj);
答案 1 :(得分:0)
这解决了我的问题。...
questionObj = {
questionText: ko.observable(' '),
title: ko.observable(' ')
};
questionObj.title(questionObj.questionText);
答案 2 :(得分:0)
@Iam_NSA响应:
嘿。 尽管您可能已经找到了想要的功能,但值得注意的是,您所做的是2个可观察对象,然后将引用分配给它本身的一个可观察对象,而不是其值分配给另一个。除非您是故意这样做的,否则您不会这样做,否则您将不会在这里问:P,则应避免这样做。 本质上,您只有一个可观察的对象,这等同于将相同的可观察对象绑定到2个不同的元素。
最好创建像这样的纯计算或订阅:
questionObj = {
questionText: ko.observable(' '),
title: ko.observable(' ')
};
questionObj.questionText.subscribe(function(val){
questionObj.title(val);
});