0
我有一个自定义的一个HTML编辑字段结合..淘汰赛自定义绑定不更新的计算功能
我把它改为使用其他自定义绑定现在(HtmlValue),因为EditableText有一个错误在更新时值(两个自定义绑定都包含在jsfiddle中)。
任何人都知道如何解决这个问题?
这是不更新值的代码:
ko.bindingHandlers.htmlValue = {
init: function (element, valueAccessor, allBindingsAccessor) {
ko.utils.registerEventHandler(element, "keyup", function() {
var modelValue = valueAccessor();
var elementValue = element.innerHTML;
if (ko.isWriteableObservable(modelValue)) {
modelValue(elementValue);
}
else { //handle non-observable one-way binding
var allBindings = allBindingsAccessor();
if (allBindings['_ko_property_writers'] && allBindings['_ko_property_writers'].htmlValue) allBindings['_ko_property_writers'].htmlValue(elementValue);
}
}
)
},
update: function (element, valueAccessor) {
var value = ko.utils.unwrapObservable(valueAccessor()) || "";
if (element.innerHTML !== value) {
element.innerHTML = value;
}
}
};
,您可以尝试在这里:http://jsfiddle.net/DMf8r/
内部线的值需要是可观察的,否则计算不会被通知变化是我寻找的问题,thx! – NicoJuicy