我想把display 为 none 的 div统统过滤掉
<div ... style="...;display: none;....>......</div>我写的:
re = new RegExp(/<DIV [^>]*?DISPLAY: none[^(DIV>)]*?>[\s\S]*?<\/DIV>/gi);
ss = ss.replace(re, "");
可是经常不起作用~~
各位看看哪有问题,还是会与服务器环境有关???
<div ... style="...;display: none;....>......</div>我写的:
re = new RegExp(/<DIV [^>]*?DISPLAY: none[^(DIV>)]*?>[\s\S]*?<\/DIV>/gi);
ss = ss.replace(re, "");
可是经常不起作用~~
各位看看哪有问题,还是会与服务器环境有关???
ct.innerHTML='<div ... style="...;display: none;....>...... </div>';
var els=ct.getElementsByTagName("div"),len=els.length,cur;
for(var i=0;i<len;i++) {
cur=els[i];
if(cur.style.display=='none')
cur.parentNode.removeChild(cur)
}
alert(ct.innerHTML)
ss = ss.replace(/<div.*?display\s*:\s*none.*?<\/div>/img, "");
如果服务器端用ASP.NET的话可以考虑用给DIV加上runat="server"会好做很多。
不知道为什么想要把它们过滤掉?它们本来就是不可见的。
目前是有一部分能过滤,一部分不能过滤,超奇怪~~
var divs = document.getElementsByTagName("div");
if (divs.length>0)
{
for(var i=0;i<divs.length;i++){
if(divs[i].style.display == "none"){
document.body.removeChild(divs[i]);
}
}
}
sendString = document.body.innerHTML;