如何将可观察对象绑定(bind)到可编辑的 div 文本内容?
最佳答案
您将需要修改默认的“文本”绑定(bind),以便它能够将编辑后的 div 的内容写回可观察对象。此任务的简单自定义绑定(bind)处理程序如下所示:
ko.bindingHandlers.editableText = {
init: function(element, valueAccessor) {
$(element).on('blur', function() {
var observable = valueAccessor();
observable( $(this).text() );
});
},
update: function(element, valueAccessor) {
var value = ko.utils.unwrapObservable(valueAccessor());
$(element).text(value);
}
};
但请注意,此示例代码需要 jQuery。
用法就这么简单:
<div contentEditable="true" data-bind="editableText: foo"></div>
这是一个示例(用 CoffeeScript 编写):http://jsfiddle.net/aBUEu/1/
关于javascript - Knockout js -> 绑定(bind)到可编辑的 div 文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11448367/