js过滤
1. 怎样用js方法过滤html等代码,如@
关键点:
正则表达式,把要替换的内容用正则表达式表达出来,如字符串、数字、字母版中文、标点符号等。权
replace() 方法,用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
上代码:
<html>
<head>
<title>无标题文档</title>
<metacharset="UTF-8">
</head>
<body>
<divid="main">文章内容@文章内容,文章内容@文章内容</div>
</body>
<script>
//获取标签中文本
vardoj_str=document.getElementById('main').innerText;
//要替换的字符串,最后的g表示全局匹配,例如又多个@
varreg_str=/@/g;
//替换为空
varnew_str=doj_str.replace(reg_str,'');
//输出新字符串
document.write(new_str);
</script>
</html>
2. 怎样用js方法过滤html等代码
^<input type="text" id="theOne" value="">
<input type="button" onclick="NoHtml()" value="过滤html标签">
<script>
function NoHtml(){
var t=document.getElementById("theOne").value;
t=t.replace(/({|})/g,''); //过滤{}
t=t.replace(/</g,'<'); //置换符号<
t=t.replace(/>/g,'>'); //置换符号>
// t=t.replace(/<\/?[^>]*>/g,''); //*<\/?[^>]*>可以匹配<script></style></body>等,版并置空权。而不是替换<和>两个符号
document.getElementById("theOne").value=t;
}
</script>
3. js如何过滤div内某特定HTML标签
//这里为了方便使用jQuery
//移除使用tag类的div标记下的strong标记下a标记下没有子元素版(链接为权空)的节点元素
jQuery('div.tagstronga:empty').parent().remove();
4. JS过滤 用户名
||function ckradd(e,f)
{
if($("#"+e+"pname").val()=="")
{
$("#plerro").text("请输入昵称后再提交");
$("#"+e+"pname").focus();
return false;
}
if($("#"+e+"pname").val().indexOf(' ')!=-1 || $("#"+e+"pname").val().indexOf('?')!=-1)
{
$("#plerro").text("昵称不允许空格或?");//其他特殊字符你自己加
$("#"+e+"pname").focus();
return false;
}
5. 如何用js或则jquery过滤特殊字符
1、jQuery使用正则匹配替换特殊字符
functionRegeMatch(){
varpattern=newRegExp("[~'!@#$%^&*()-+_=:]");
if($("#name").val()!=""&&$("#name").val()!=null){
if(pattern.test($("#name").val())){
alert("非法字符!");
$("#name").attr("value","");
$("#name").focus();
returnfalse;
}
}
}
2、jQuery限制输入ASCII值
//数字0-9的ascii为48-57
//大写A-Z的ascii为65-90
//小写a-z的ascii为97-122
//----------------------------------------------------------------------
//<summary>
//限制只能输入数字和字母
//</summary>
//----------------------------------------------------------------------
$.fn.onlyNumAlpha=function(){
$(this).keypress(function(event){
vareventObj=event||e;
varkeyCode=eventObj.keyCode||eventObj.which;
if((keyCode>=48&&keyCode<=57)||(keyCode>=65&&keyCode<=90)||(keyCode>=97&&keyCode<=122))
returntrue;
else
returnfalse;
}).focus(function(){
this.style.imeMode='disabled';
}).bind("paste",function(){
varclipboard=window.clipboardData.getData("Text");
if(/^(d|[a-zA-Z])+$/.test(clipboard))
returntrue;
else
returnfalse;
});
};
//-----调用方法$("#文本框id").onlyNumAlpha();
3、js正则匹配过滤
functionstripscript(s)
{
varpattern=newRegExp("[`~!@#$^&*()=|{}':;',\[\].<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]")
varrs="";
for(vari=0;i<s.length;i++){
rs=rs+s.substr(i,1).replace(pattern,'');
}
returnrs;
}
6. js 如何过滤div里内的指定字符
String.replace(正则表达式,"")
replace是string类型内置的替换方法,第一个参数可以是正则表回达式,答第二个参数是想要替换成的文本,正则中可以使用/g来表示替换所有匹配的文本,不使用则代表只替换匹配到的第一个字符对象,将第二个参数设为空字符串便可达到过滤的效果。
具体正则需要你自己去了解关于正则的知识了,祝你好运。
7. Javascript如何过滤数组
你这个数据格式就有问题吧。。
应该是这样的:
var arr = {
"list":
[{name:"tony","age":22},
{name:"JOE","age":22},
{name:"jod","age":23},
{name:"Kim","age":24}]
};
过滤:专
var array = new Array();
for(var i = 0; i < arr.list.length; i++){
if (arr.list[i].age == 22 ) array.push(arr.list[i]);
}
输出:属
var str="";
for (var j = 0; j < array.length; j++){
str += "name:" + array[j].name + " age:"+array[j].age+"\n";
}
alert(str);
8. js 过滤所有空字符串
首先要理解这个方法replace。
语法:string.replace(searchvalue,newvalue)
searchvalue:必须。规定子字符串或要替换的回模式的 RegExp 对象。
请注意,如果该答值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。
newvalue:必需。一个字符串值。规定了替换文本或生成替换文本的函数。
注意RegExp 对象,而// 就是一个RegExp 对象(正则表达式)。
//varRegExp=newRegExp(pattern,attributes);
varreg=newRegExp('','g');
str=str.replace(reg,'');//跟str=str.replace(//g,'')是一样意思。
而这里的g是global的缩写,意思是全局匹配;
如果没有加g,那么只是匹配第一个就结束了,对应str2,否则就全局匹配,对应str1
9. 请问该怎么过滤js元素
NotScripts https://addons.opera.com/en/addons/extensions/details/notscripts/1.1.0/?display=enNoAds Advanced https://addons.opera.com/en/addons/extensions/details/noads-advanced/1.3.4/?display=en 本地有汉化版External Scripts https://addons.opera.com/en/addons/extensions/details/external-scripts/1.1/?display=en 自带urlfilter.ini 都能过滤js元素,过滤特定网页的页面js也可用userjs 查看更多答案>>
10. js中怎样实现数组过滤函数filter
filter 是根据返回的值是否为真来判断是否保留元素,所以可以这样实现
Array.prototype.filter=Array.prototype.filter||function(func){
vararr=this;
varr=[];
for(vari=0;i<arr.length;i++){
if(func(arr[i])){
r.push(arr[i]);
}
}
returnr;
}
因为目前大部分浏览器有 filter 实现,所以测试时只能改个名字叫 filterx,下面是测试代码
vardata=[1,2,3,4,5,6,7];
Array.prototype.filterx=Array.prototype.filterx||function(func){
vararr=this;
varr=[];
for(vari=0;i<arr.length;i++){
if(func(arr[i])){
r.push(arr[i]);
}
}
returnr;
}
console.log(data.filter(function(t){
returnt%3>0;
}));
console.log(data.filterx(function(t){
returnt%3>0;
}));