从字符串中查找关闭锚标记并添加一些值

时间:2015-07-08 17:12:44

标签: javascript

我正在尝试找到关闭锚标记。并在结束标记之后添加Icon。内部值来自数据库。我需要提取值并附加图标。

例如

  <p>This is a paragraph and link <a href="#">test</a>testdsfasffd<a href="#">test1</a>fdfdfdfdfd</p>

在上面的示例中,我有段落标记,我有两个锚标记。

实际上结果将是Test added plus icon testdsfasffd&amp; Test1 added plus icon 2 fdfdfdfdfd

首先我需要找到结束锚标签,然后我需要附加其他功能的图标

目前我正在尝试这样

var string = '<p>This is a paragraph and link <a href="#">test</a>testdsfasffd<a href="#">test1</a>fdfdfdfdfd</p>';

我正在设置模式

var closingAnchor = '</a>';
string.split(closingAnchor);

之后我需要使用 for loop 从其他功能追加图标。我在这里挣扎,请帮助我。

2 个答案:

答案 0 :(得分:1)

拆分HTML通常是一个坏主意。所以只需使用DOM。

&#13;
&#13;
var string = '<p>This is a paragraph and link <a href="#">test</a>testdsfasffd<a href="#">test1</a>fdfdfdfdfd</p>';

var div = document.createElement("div");
div.innerHTML = string;
var anchors = div.getElementsByTagName("a");
for (var i = 0; i < anchors.length; i++) {

  var text = document.createTextNode(' TEXT TO ADD ');
  var sibling = anchors[i].nextSibling;
  if(sibling) {
      anchors[i].parentNode.insertBefore(text, sibling);
  } else {
      anchors[i].parentNode.appendChild(text);                        
  }
}
console.log(div.innerHTML);

document.getElementById("out").innerHTML = div.innerHTML;
&#13;
<div id="out"></div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

你是://代表正则表达式,<\/a>代表</a>g代表搜索所有

&#13;
&#13;
var string = '<p>This is a paragraph and link <a href="#">test</a>testdsfasffd<a href="#">test1</a>fdfdfdfdfd</p>';
var output = string.replace(/<\/a>/g, '</a>YOUR APPENDEE');
alert(output);
&#13;
&#13;
&#13;

希望这有帮助。