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

时间:2021-05-26

复制代码 代码如下:
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;
}
}
}

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章