2012-04-23 34 views

回答

8

一种选择是在窗体上添加keypress处理程序,以吸收回车键。它看起来像:

<form data-bind="event: { keypress: absorbEnter }, submit: test"> 
    <div data-bind="absorbEnter: true"> 
    <input data-bind="value: name"> 
    <input type="submit" value="Go" /> 
    </div> 
</form> 

JS:

var viewModel = { 
    name: ko.observable("test"), 
    absorbEnter: function(data, event) { 
     return event.keyCode !== 13; 
    }, 
    test: function() { 
     console.log("submitting", arguments);   
    } 
}; 
ko.applyBindings(viewModel); 

样品在这里:http://jsfiddle.net/rniemeyer/FvZXj/2/

+0

是瑞安,是绝对的工作!谢谢。 – jgarza 2012-04-23 20:19:40

+0

甚至可以将它添加到一个bindingHandler以将其从视图模型中取出,如下所示:http://jsfiddle.net/rniemeyer/FvZXj/3/ – 2012-04-23 20:27:24

+0

KO可以区分键和键吗? – FutuToad 2013-03-18 11:29:40

相关问题