JS:替换标签的innerHTML
JS: Replace innerHTML of tags
我的应用程序从我的网站动态获取HTML代码,并将其保存为字符串。
下面是一个例子:
Lorem ipsum <a href="http://www.google.com">Click Here</a>
Lorem ipsum <a href="http://www.google.com">Click Somewhere</a>
Lorem ipsum <a href="http://www.google.com">sdfsdf</a>
Lorem ipsum <a href="http://www.google.com">djmhfhb</a>
Lorem ipsum <a href="http://www.google.com">fgbnfgn</a>
我现在需要的是一个脚本,所有的标签,并取代他们的innerHTML与"LINK"。结果应该是:
Lorem ipsum <a href="http://www.google.com">LINK</a>
Lorem ipsum <a href="http://www.google.com">LINK</a>
Lorem ipsum <a href="http://www.google.com">LINK</a>
Lorem ipsum <a href="http://www.google.com">LINK</a>
Lorem ipsum <a href="http://www.google.com">LINK</a>
我通常这样使用jQuery:
$(a).html = "Link"
但我不想删除链接的innerHTML在我的应用程序,但那些内部字符串包含我的网站的HTML。
我不用PHP。我使用任何类型的JS来帮助我。什么好主意吗?非常感谢您的帮助!
这是使用jQuery的方法:
$('a').text('LINK');
使用jQuery的。text()
例如:
$("a").text("LINK");
在js脚本中尝试此代码
<a href="www.google.com" id="hello" />Click<a>
并像这样使用
$('#hello').html('LINK');
或
$('a').text('LINK');
目前还不清楚为什么你不想在你的应用程序中使用jQuery .html()或。text(),而是操纵包含html的字符串?
这样做需要某种正则表达式模式,如
var pattern = "<a .*?href=['""](.+?)['""].*?>(.+?)</a>";
,然后使用string。替换传入RegExp对象
之类的var regex = new RegExp(pattern);
"yourString".replace(regex , "LINK");
如果你得到那些标记作为字符串,而不是DOM片段,你可以试试这个:
http://jsfiddle.net/YVb5k/var str="HTML markup";
if ((new DOMParser()).parseFromString("", "text/html")) {
var html = (new DOMParser()).parseFromString(str, "text/html");
} else {
var html = document.implementation.createHTMLDocument("");
html.body.innerHTML = str;
}
var as = html.getElementsByTagName("a");
for (var i = 0; i < as.length; i++) {
as[i].innerHTML = "LINK";
}
console.log(html.body.innerHTML);
只能在IE>=9中使用
相关文章:
- Javascript更改标签的innerhtml
- javascript中标签的innerHTML问题
- 如何通过 innerHTML 设置选择标签选项
- 由innerHTML创建的Link(标签)无法在jQuery幻灯片面板中加载其href文件
- innerHTML 在 img 标签 javascript 之后
- 我可以在 innerHTML 中添加样式标签吗?
- AngularJS标签没有'不能在innerHTML中工作
- Javascript innerhtml没有'不要用树枝标签
- 我如何允许<img>并且<a>innerHTML的标签,但没有其他标签?(制作论坛)
- 如何访问innerHTML但忽略<脚本>标签
- 未捕获的类型错误:无法调用方法'innerHTML'即使当我将脚本代码放在<身体>标签
- 对象标签添加innerHTML总是空的onload
- 我如何使用innerHTML而不删除标签内的整个html
- 在PHP中将标签的innerhtml传递给变量
- JS:替换标签的innerHTML
- IE innerHTML从自定义标签开始
- IE9的createElement和设置innerHTML上的删除标签的集合操作
- innerHTML和html:选择标签
- Javascript更改标签's通过innerhtml的文本不起作用
- 当尝试在opera的html标签中更改innerHTML时,她将我放到html页面的顶部