js 替换文本框中非法字符
String.prototype.TextFilter=function(){varpattern=newRegExp("[<>]");varrs="";for(vari...
String.prototype.TextFilter=function(){
var pattern=new RegExp("[<>]");
var rs="";
for(var i=0;i<this.length;i++){
rs+=this.substr(i,1).replace(pattern,'');
}
return rs;
}
function checkChar(){
var uname=document.getElementById("uname1").value;
var txt=uname.TextFilter();
if(txt!=uname){
alert("您输入的内容含有限定字符");
}
我不要有提示,我要直接讲文本框中的非法符号替换成空格 展开
var pattern=new RegExp("[<>]");
var rs="";
for(var i=0;i<this.length;i++){
rs+=this.substr(i,1).replace(pattern,'');
}
return rs;
}
function checkChar(){
var uname=document.getElementById("uname1").value;
var txt=uname.TextFilter();
if(txt!=uname){
alert("您输入的内容含有限定字符");
}
我不要有提示,我要直接讲文本框中的非法符号替换成空格 展开
展开全部
把alert去掉不就行了吗?
function checkChar(){
var inputobj=document.getElementById("uname1"); //得到文本框对象
inputobj.value=inputobj.value.TextFilter(); //用TextFilter()过滤文本框的值
}
//TextFilter()函数直接把限定字符替换为空了,如果替换为空格的话修改该函数即可,
//在for循环中把 rs+=this.substr(i,1).replace(pattern,'');
//改成 rs+=this.substr(i,1).replace(pattern,' ');
ps:这种简单的过滤用正则了还要用for循环,实在不欣赏这样的写法
一个函数就搞定了,扩展String对象实在没必要:
function checkChar(){
var inputobj=document.getElementById("uname1"); //得到文本框对象
inputobj.value=inputobj.value.replace(/[<>]/g," "); //直接正则替换就OK了
}
function checkChar(){
var inputobj=document.getElementById("uname1"); //得到文本框对象
inputobj.value=inputobj.value.TextFilter(); //用TextFilter()过滤文本框的值
}
//TextFilter()函数直接把限定字符替换为空了,如果替换为空格的话修改该函数即可,
//在for循环中把 rs+=this.substr(i,1).replace(pattern,'');
//改成 rs+=this.substr(i,1).replace(pattern,' ');
ps:这种简单的过滤用正则了还要用for循环,实在不欣赏这样的写法
一个函数就搞定了,扩展String对象实在没必要:
function checkChar(){
var inputobj=document.getElementById("uname1"); //得到文本框对象
inputobj.value=inputobj.value.replace(/[<>]/g," "); //直接正则替换就OK了
}
2015-07-09
展开全部
可以用jquery实现,参考如下:
window.onload = function(){
var inputs = document.getElementsByTagName_r("input") ;
var textareas = document.getElementsByTagName_r("textarea") ;
var fieldevt = Array("isnum","istel","isw") ;
var fieldmod = Array(/[^0-9]/g,/[^0-9\-\s]/g,/[^0-9a-zA-Z]/g) ;
function addListen(obj,evt,flag){
if(document.addEventListener){ // W3C标准
obj.addEventListener(evt.replace(/^on/,""),function(){obj.value=obj.value.replace(fieldmod[flag],"");},false) ;
}else{
obj.attachEvent(evt,function(){obj.value=obj.value.replace(fieldmod[flag],"");}) ;
}
}
function conListen(obj,evt){
for(var i=0;i<obj.length;i++){
for(var j=0;j<fieldevt.length;j++){
if(obj[i].className.indexOf(fieldevt[j])>0){
addListen(obj[i],evt,j) ;
}
}
}
}
conListen(inputs,"onkeyup") ;
}
window.onload = function(){
var inputs = document.getElementsByTagName_r("input") ;
var textareas = document.getElementsByTagName_r("textarea") ;
var fieldevt = Array("isnum","istel","isw") ;
var fieldmod = Array(/[^0-9]/g,/[^0-9\-\s]/g,/[^0-9a-zA-Z]/g) ;
function addListen(obj,evt,flag){
if(document.addEventListener){ // W3C标准
obj.addEventListener(evt.replace(/^on/,""),function(){obj.value=obj.value.replace(fieldmod[flag],"");},false) ;
}else{
obj.attachEvent(evt,function(){obj.value=obj.value.replace(fieldmod[flag],"");}) ;
}
}
function conListen(obj,evt){
for(var i=0;i<obj.length;i++){
for(var j=0;j<fieldevt.length;j++){
if(obj[i].className.indexOf(fieldevt[j])>0){
addListen(obj[i],evt,j) ;
}
}
}
}
conListen(inputs,"onkeyup") ;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
那你写个正则替换白 str_replace
追问
能具体点吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询