gpt4 book ai didi

ñÑ 字符的 Javascript 验证适用于 Chrome,但不适用于 Firefox

转载 作者:太空宇宙 更新时间:2023-11-04 15:42:50 24 4
gpt4 key购买 nike

我正在开发 ASP.Net,我有一个 WebForm,其中包含指向 javascript 文件的链接,该文件包含以下函数:

    $(".string").keydown(function (e) {
var x = (e.charCode) ? e.charCode : ((e.which) ? e.which : e.keyCode);
if ($.inArray(e.keyCode, [46, 8, 27, 16, 13, 32, 192, 9, 209, 241]) !== -1 ||
(e.keyCode == 65 && (e.ctrlKey === true || e.metaKey === true)) ||
(e.keyCode == 67 && (e.ctrlKey === true || e.metaKey === true)) ||
(e.keyCode == 88 && (e.ctrlKey === true || e.metaKey === true)) ||
(e.keyCode >= 35 && e.keyCode <= 39)) {
return;
}
if (e.keyCode < 65 || e.keyCode > 90) {
e.preventDefault();
}
});

这成功地允许我在 Chrome 上输入 ñÑ (209, 241) 字符,但在 Firefox 上失败,我看到在处理 Firefox 时应该使用 e.which 但它没有不工作。我不太擅长 JavaScript,所以我在这里不明白什么?

最佳答案

在 Lee Jenkins 先生的帮助下,我意识到像这样修复我的代码就足以解决问题,非常感谢!只需添加 (e.key == "ñ"|| e.key == "Ñ") ||

$(".string").keydown(function (e) {
var x = (e.charCode) ? e.charCode : ((e.which) ? e.which : e.keyCode);
if ($.inArray(x, [46, 8, 27, 16, 13, 32, 192, 9, 209, 241]) !== -1 ||
(e.keyCode == 65 && (e.ctrlKey === true || e.metaKey === true)) ||
(e.keyCode == 67 && (e.ctrlKey === true || e.metaKey === true)) ||
(e.keyCode == 88 && (e.ctrlKey === true || e.metaKey === true)) ||
(e.keyCode == 88 && (e.ctrlKey === true || e.metaKey === true)) ||
(e.key == "ñ" || e.key == "Ñ") ||
(e.keyCode >= 35 && e.keyCode <= 39)) {
return;
}
if (e.keyCode < 65 || e.keyCode > 90) {
e.preventDefault();
}
});

关于ñÑ 字符的 Javascript 验证适用于 Chrome,但不适用于 Firefox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43749025/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com