javascript - 不能使用文本区域中的 Enter 键

标签 javascript jquery html

在我的项目中,我需要对某些文本框禁用 Enter 键,因为我不希望在输入键按钮时发布页面。我使用此代码来禁用 Enter 键:

$(document).keypress(
function (event) {
    if (event.which == '13') {
        event.preventDefault();
    }
});

它工作正常,但是当在页面中添加文本区域时,我无法输入断行键,因为 Enter 键被禁用。

如何启用文本区域的 Enter 键?

最佳答案

我不知道是否建议附加一个像这样的全局 keypress 处理程序。无论如何,最简单的出路是

$(document).on('keypress', 
function (event) {
    if (event.which == '13' && event.target.tagName != 'TEXTAREA') {
        event.preventDefault();
    }
});

在上面,您正在检查 event.targettagName 以查看发生 enter 的元素是否为 文本区域或不

但是,我会推荐这种方法

$('form').on('keypress', 'form',
    function (event) {
        if (event.which == '13') {
            event.preventDefault();
        }
    });

这将定位所有 input 元素和 textarea 元素,

关于javascript - 不能使用文本区域中的 Enter 键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30821691/

相关文章:

javascript - 手动滚动到 anchor 时更改 url?

javascript - 脚本适用于 xampp 但不适用于主机服务器

javascript - 使用 Reactjs Stripe 自定义表单

javascript - 使用 AMD 在 Typescript 中引用文件(模块)

javascript - typescript 2 : Import statement generates TS2532: "Object is possibly ' undefined'.“

javascript - 使用 php 自动填充 html 表单

javascript - 离开页面并返回时,不保留 JS 页面格式

javascript - 有什么方法可以将图像与选择列表一起使用?

html - 图像不会随浏览器大小调整大小

java - Android 应用中的 HTML/JS 应用