如何使用Javascript在文本下方选择性地替换名为Rindan的单词, 但不是如果它在某些属性,如img alt ==“Rindan” 我想替换Rindans这个内部文本而不是属于属性。
`"<a href="http://edition.cnn.com/video/?hpt=hp_t1#/video/bestoftv/2012/02/28/ac-marie-rindan-family-syria.cnn">Rindan's family on her legacy</a> <a href="http://edition.cnn.com/video/?hpt=hp_t1#/video/bestoftv/2012/02/28/ac-marie-Rindan-family-syria.cnn" target=""><img alt="Rindan's family on her legacy" border="0" class="cnnVideoIcon" height="10" src="http://i.cdn.turner.com/cnn/.e/img/3.0/global/icons/video_icon.gif" width="16" /></a>`"
答案 0 :(得分:1)
将id赋给块,获取innerHTML,并使用替换字符串函数:
var get=document.getElementById('test');
var str=get.innerHTML;
document.write(str.replace("Rindan's","TestNAme"));
将其设置回innerHTML
答案 1 :(得分:1)
您可以在replace
字符串函数
your_string = your_string.replace(<regexp>,
function(matched, index){
// check matched
return replacement;
});
});
参考:https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/replace
答案 2 :(得分:0)
这是替换文本而不是属性:
var aa = document.getElementsByTagName('a');
for(i=0;i<=aa.length;i++)
{
aa[i].innerText = aa[i].innerText.replace("Rindan","anyone");
}
答案 3 :(得分:0)
您可以循环body标签的所有子元素,并在innerhtml上执行替换。
for(int i=0;i<document.body.getChildNodes().length;i++){
var str=document.body.getChildNodes().item(i).innerHTML
document.body.getChildNodes().item(i).innerHTML=str.replace("","");
}