3

init メソッドでフォーカスとぼかしの動作を設定するカスタム バインディングを作成しています。それ以外の場合は、このカスタム バインディングがネイティブの Knockout 値バインディングとまったく同じように動作することを望みます。

 ko.bindingHandlers.currencyValue = {

init: function (element, valueAccessor) {
    $(element).focus(function () {
        //focus behavior here...
    });

    $(element).blur(function () {
        //blur behavior here...
    });

   //what do I put here to get the native value binding behavior?
},
update: function (element, valueAccessor) {
    //what do I put here to get the native value binding behavior?
}
4

2 に答える 2

2

ko.bindingHandlers.value.initおよびko.bindingHandlers.value.update関数を呼び出す必要があります。

ko.bindingHandlers.currencyValue = {
init: function (element, valueAccessor, allBindings, viewModel, context) {
    $(element).focus(function () {
        //focus behavior here...
    });

    $(element).blur(function () {
        //blur behavior here...
    });

   return ko.bindingHandlers.value.init(element, valueAccessor, allBindings, viewModel, context);
},
update: function (element, valueAccessor, allBindings, viewModel, context) {
    return ko.bindingHandlers.value.update(element, valueAccessor, allBindings, viewModel, context);
}
于 2013-04-11T15:19:29.033 に答える