JavaScript Comment节点和解析HTML

时间:2016-11-27 07:06:53

标签: javascript html html5

我正在使用html中的节点和注释。有没有一种方法可以解析评论中的HTML?

我目前可以使用nodeValue方法但只返回一个字符串。

即使在评论中的元素中获取属性也会有所帮助。

2 个答案:

答案 0 :(得分:0)

您可以对评论内容(字符串)进行正则表达式匹配。甚至还有一个选项:在注释中放置一个有效的JSON字符串,然后使用JSON.parse()将其转换为有效的JS对象。

答案 1 :(得分:0)

使用nodeValue很方便。请查看以下内容:

function log(str) {
  document.body.innerHTML += str + '<br>';
}

var x = Array.from(document.body.childNodes);

x.forEach(function(el) {
  if (el.nodeType === 8) {
    var div, elm;
    div = document.createElement('div');
    log(el.nodeValue);
    div.innerHTML = el.nodeValue;
    
    //here we get element we need
    elm = div.children[0];
    console.log(elm.nodeName, "id = " + elm.getAttribute('id'));
  }
})
<!--
<select id="testid">
<option value="1">text1</option>
<option value="2">text2</option>
<option value="3">text3</option>
</select>
-->