我有一个阻止用户使用Enter / Return键提交表单的表单。

我要允许输入/返回键进行操作的表单上有两个文本区域。

我添加了以下代码以尝试解决此问题(from this thread):

    $(window).keydown(function(event){
        //if(event.keyCode == 13) {
        if((event.which== 13) && ($(event.target)[0]!=$("textarea")[0])) {
            event.preventDefault();
            return false;
        }
    });


我引用的线程中的代码不适用于多个textarea-每个表单仅适用于一个textarea!

但是,此代码仅适用于第一个文本区域。第二个文本区域中的输入/返回键不起作用。

我已经多次尝试使它在1个以上的textarea中起作用,但我的所有尝试均以失败告终。

有什么建议么?

谢谢。

最佳答案

试试这个解决方案。

它确实禁用了表单提交的enter键,并且确实允许enter键按照您的帖子中所述在所有文本区域中创建新行。

$(document).on("keypress", ":input:not(textarea)", function(event) {
    if (event.keyCode == 13) {
        event.preventDefault();
    }
});

关于javascript - 回车键不适用于许多文本区域,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50710402/

10-16 02:35