js特殊字符过滤的示例代码
时间:2020-10-10 11:46:50|栏目:JavaScript代码|点击: 次
复制代码 代码如下:
//匹配中文 数字 字母 下划线
var checkInput = function (str) {
var pattern =var pattern = /^[\w\u4e00-\u9fa5]+$/gi;
if(pattern.test(c))
{
return false;
}
return true;
}
1.js中用正则表达式 过滤特殊字符, 校验所有输入域是否含有特殊符号
复制代码 代码如下:
function stripscript(s) {
var pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()—―|{}【】‘;:”“'。,、?]")
var rs = "";
for (var i = 0; i < s.length; i++) {
rs = rs + s.substr(i, 1).replace(pattern, '');
}
return rs;
}
2.校验所有输入域是否含有特殊符号
复制代码 代码如下:
/**
* 校验所有输入域是否含有特殊符号
* 所要过滤的符号写入正则表达式中,注意,一些符号要用'\'转义.
* 试例:
* if(checkAllTextValid(document.forms[0]))
* alert("表单中所有文本框通过校验!");
*/
function checkAllTextValid(form) {
//记录不含引号的文本框数量
var resultTag = 0;
//记录所有text文本框数量
var flag = 0;
for (var i = 0; i < form.elements.length; i++) {
if (form.elements[i].type == "text") {
flag = flag + 1;
//此处填写所要过滤的特殊符号
//注意:修改####处的字符,其它部分不许修改.
//if(/^[^####]*$/.test(form.elements[i].value))
if (/^[^\|"'<>]*$/.test(form.elements[i].value))
resultTag = resultTag + 1;
else
form.elements[i].select();
}
}
/**
* 如果含引号的文本框等于全部文本框的值,则校验通过
*/
if (resultTag == flag)
return true;
else {
alert("文本框中不能含有\n\n 1 单引号: ' \n 2 双引号: \" \n 3 竖 杠: | \n 4 尖角号: < > \n\n请检查输入!");
return false;
}
}