Blur上的对话框消息使用Knockout Js中的自定义绑定

时间:2015-06-04 18:22:36

标签: knockout.js knockout-2.0 knockout-mvc

我在MVC中要求使用淘汰赛js。

在输入输入数量的输入字段之后,应显示一条对话框消息,其中包含一些来自模型的文本。

我在淘汰赛上有一天的宝宝。所以我不知道这个工具是怎样的,

我想使用以下代码来执行该操作。但我不确定我究竟应该接管什么。我的观点应该是......控制器...... !!!

ko.bindingHandlers.onFocusOut = {

    update: function (element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {

        $(element).blur(function () {

          //Add message here to display to user

        });

    }

}

以下示例接近我的要求,但是当我在更新时应用以下行时。它不起作用:(

 $(element).blur(function () { alert("Triggered on Blur"); } 

Example

感谢您对此的支持以实施。提琴手的实施会非常有帮助。

1 个答案:

答案 0 :(得分:1)

我不完全了解您的情况,但我理解您不需要自定义绑定,您可以使用event binding

HTML:

<input data-bind="value: name, event: { blur: showMessage}" />

JavaScript的:

var viewModel = {
    name: ko.observable("Bob"),
    showMessage: function(){
        alert('Hello ' + this.name());
    }
};

ko.applyBindings(viewModel);

每次更新输入字段中的值时,您都会收到包含更新值的警报。

以下是jsFiddle