js过滤特殊字符输入适合输入、粘贴、拖拽多种情况

前端技术 2023/09/09 JavaScript
复制代码 代码如下:

function TextValidate(type) {
var code;
var character;
var Lang = document.getElementById(\'Lang\').value;
var err_msg = \"\";
if (Lang != \"Eng\") {
err_msg = \"文件夹名稱不能包含下列字符之一:\\n \\\\ / : * ? \\\" < > | & , \";
}
else {
err_msg = \"A Folder Name cannot contain any of the following characters:\\n \\\\ / : * ? \\\" < > | & ,\";
}

if (type == \"input\") {
code = window.event.keyCode;
}
else if (type == \"paste\") {
code = window.clipboardData.getData(\'Text\');

}
else if (type == \"Drop\") {
code = window.event.dataTransfer.getData(\'Text\');

}
else {
code = arguments.callee.caller.arguments[0].which;
}
var character = String.fromCharCode(code);
var txt = new RegExp(\"[\\\\*,\\\\&,\\\\\\\\,\\\\/,\\\\?,\\\\|,\\\\:,\\\\<,\\\\>,\\\"]\");
if (type == \"input\") {
if (txt.test(character)) {
alert(err_msg);
if (document.all) {
window.event.returnValue = false;
}
else {
arguments.callee.caller.arguments[0].preventDefault();
}
}
}
if (type == \"paste\" || type == \"Drop\") {
if (txt.test(code)) {
alert(err_msg);
window.event.returnValue = false;
}
}
}

本文地址:https://www.stayed.cn/item/24654

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。