是否可以在Twitter Typeahead的下拉列表中的元素上禁用enter按键?我正在使用Angular和Typescript。
我尝试在输出中的preventDefault()
event.keycode === 13
时使用ng-keydown
。 ng-keydown
会检测到输入已被按下但是无法阻止输入选择元素。
我是否需要在输入时禁用输入型侦听器?
答案 0 :(得分:1)
您是否在input
元素或form
元素上尝试过它?
对我来说,当我执行时它会起作用:
$('form').on('submit', function(e) {event.preventDefault();});
但是我建议使用更具体的选择器;)
或者您可以在input
字段上执行此操作,但您需要阻止事件传播。 preventDefault
仅阻止事件的默认行为 - 在输入的情况下,它会更新它的值。您要做的是停止提交表单,因此您需要停止事件传播。
以下是适用于输入的代码段:
$('#demo-input').on('keydown', function(e) {
if (e.keyCode === 13) {
return false
}
});
使用jQuery时,事件处理程序中的return false
与调用e.preventDefault()和e.stopPropagation()相同。