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

2014-03-22 18

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; 
} 
} 
}
展开阅读全文

更多Javascript文章

DHTML Slide Show script图片轮换
Mar 03 24
js鼠标点击事件在各个浏览器中的写法及Event对象属性介绍
Jan 24 32
通过JS判断联网类型和连接状态的实现代码
Apr 01 26
使用 stylelint检查CSS_StyleLint
Apr 28 17
详解Javascript获取缓存和清除缓存API
May 25 34
jquery分页插件pagination使用教程
Oct 23 22
深入学习JavaScript中的bom
May 27 23
手机访问当前页面