停止在输入框中输入表情符号

本文关键字:输入 符号 | 更新日期: 2023-09-27 18:07:47

我需要知道如何阻止平板电脑或移动用户在任何input type="text"字段中输入表情符号,因为用户能够提交我的表单,但它会导致我的中间层出现错误,因为它们作为正方形通过,并且还写入我的数据库作为正方形。

似乎在谷歌上找不到解决方案,所以我想在这里问一下。

是否有一个HTML属性我可以使用的东西?

停止在输入框中输入表情符号

通过更改编码使数据库兼容可能是一个更好的主意。

也就是说,您可以遍历文本字段中的所有字符,并确保它们的序号在32到255之间。这将使您只允许打印可打印的ASCII字符,对于任何英文文本都绰绰有余。

像这样:(未经测试,在textarea中输入)

function stripNonAscii(input) {
    let output = '';
    for (var i = 0; i < input.length; i++) {
        let c = input.charCodeAt(i);
        if(c >= 32 && c <= 255) {
            output += input.substring(i, 1);
        }
    }
    return output;
}