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;
}));