使用Prototype JavaScript,按下回车键时提交表单

8

我看到了一些类似的问题,但没有针对Prototype的。

我有一个没有提交按钮的表单(使用一个调用一些javascript的样式链接)。

如何最好地检测所有输入字段中的回车键按下并提交表单?

谢谢!


我无法提供任何特定于Prototype的建议,但您是否考虑过添加一个提交按钮,然后使用Prototype/JS将其隐藏?这不是您想要的答案,但它可以很好地降级。 - David Thomas
3个回答

10

这是一种你可以使用的例子:

$('input').observe('keypress', keypressHandler);

function keypressHandler (event){
    var key = event.which || event.keyCode;
    switch (key) {
        default:
        break;
        case Event.KEY_RETURN:
            $('yourform').submit();
        break;   
    }
}

3
这与上面的内容相同,但不需要设置一个函数:
$('input').observe('keypress', function(event){
    if ( event.keyCode == Event.KEY_RETURN  || event.which == Event.KEY_RETURN ) {
        // enter here your code
        Event.stop(event);
    }
});

0

使用原型:

document.observe("dom:loaded", function() {
    $$('form').each(function(f) {
        $(f).select("input").each(function(e) {
            e.observe('keypress', function(event) {
                if ( event.keyCode == Event.KEY_RETURN  || event.which == Event.KEY_RETURN ) {
                    this.form.submit();
                }
            });
        });
    });
});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接