我认为我的问题与this类似。但是,输入文本上的事件按键仍无效。
我的问题是如何在输入文本框中添加自定义绑定并触发“'某些内容”。按下输入按钮时。
当目标是kendo小部件时,这是另一个sample;并且它正在工作。
HTML code:
<div id="app">
<input type="text" data-bind="keyPress: onKeyPress" />
<div id="output"></div>
</div>
Java脚本代码:
kendo.data.binders.keyPress = kendo.data.Binder.extend({
init: function (element, bindings, options) {
kendo.data.Binder.fn.init.call(this, element, bindings, options);
var binding = this.bindings.keyPress;
$(element.input).bind("keypress", function (e) {
if (e.which == 13) {
binding.get();
}
});
},
refresh: function () { }
});
var viewModel = kendo.observable({
onKeyPress: function () {
$("#output").append("<div>keyPress</div>");
}
});
kendo.bind($("#app"), viewModel);
Jsfiddle代码: http://jsfiddle.net/ikomangmahendra/4uL8Y/2/
提前致谢
答案 0 :(得分:0)
问题与以下几行有关:
before:
$(element.input).bind("keypress", function (e) {
after:
$(element).bind("keypress", function (e) {
我应该将事件绑定到元素,而不是绑定到element.input。