js過濾特殊字元函數主查過濾一些非法的,可能存在注入對網站流覽產生影響的特殊字元串或字元哦,下面我們提供了二款這種函數。
function strips教程cript(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;
}
方法二
* 校驗所有輸入域是否含有特殊符號
* 所要過濾的符號寫入正則運算式中,注意,一些符號要用''轉義.
* 要轉義的字元包括:1, 點號 .
* 2, 中括弧 []
* 3, 大括弧 {}
* 4, 加號 +
* 5, 星號 *
* 6, 減號 -
* 7, 斜杠
* 8, 分隔號 |
* 9, 尖號 ^
* 10, 錢幣 $
* 11, 問號 ?
* 試例:
* 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")
{
flagflag = flag + 1;
//此處填寫所要過濾的特殊符號
注意:修改#處的字元,其它部分不許修改.
//if(/^[^#]*$/.test(form.elements[i].value))
if(/^[^|"' <>]*$/.test(form.elements[i].value))
resulttagresulttag = resulttag+1;
else
form.elements[i].select();
}
}
/**
* 如果含引號的文字方塊等於全部文字方塊的值,則校驗通過
*/
if(resulttag == flag)
return true;
else
{
alert("文字方塊中不能含有nn 1 單引號: ' n 2 雙引號: " n 3 豎 杠: | n 4 尖角號: < > nn請檢查輸入! ");
return false;
}
}