編集可能な div で監視可能な更新を行うカスタム バインディングを見つけました。イベントが発生したときに関数を実行できません。
カスタムバインディング「editableText」がViewModelで関数を実行するために何ができるか知っている人はいますか?
テキストが変更されたときに関数「nameChange」を実行したいと思います。
HTML:
<div contenteditable="true" data-bind="event: { change: nameChange }, editableText: firstName"></div>
Javascript:
//Editable Text Custom Binding
ko.bindingHandlers.editableText = {
    init: function (element, valueAccessor) {
        $(element).on('blur', function () {
            var observable = valueAccessor();
            observable($(this).text());
        });
    },
    update: function (element, valueAccessor, allBindingsAccessor, data) {
        var value = ko.utils.unwrapObservable(valueAccessor());
        $(element).text(value);
    }
};
//Knockout ViewModel
function viewModel(){
    var self = this;
    self.firstName = ko.observable();
    self.status = ko.observable();
    self.nameChange = function(){
        console.log("Name has been updated");
        ko.mapping.fromJS("Name has been updated", {}, self.status)
    }
    self.loadName = function(){
        ko.mapping.fromJS("hey", {}, self.firstName)
    }
}
var vm = new viewModel();
ko.applyBindings(vm);
vm.loadName();