如何将选定的html元素解析为字符串

yhuiod9q  于 2021-09-23  发布在  Java
关注(0)|答案(2)|浏览(292)

此问题已在此处找到答案

获取dom节点的字符串表示形式(12个答案)
如何将HtmleElement转换为字符串(7个答案)
三天前关门。
我需要将整个html标记解析为一个字符串,我使用html标记中的“this”关键字选择该字符串。
例子:

<button id="3" onClick="print(this)">B3</button>  
<script type="text/javascript">
  function print(element)
  {
      console.log(element);
      var x = element.toString()
      console.log(x)
  }
</script>

当我们检查第一个控制台时,结果将是:

<button id="3" onClick="print(this)">B3</button>,

在第二个控制台中,结果将是:-

[object HTMLButtonElement],

是否有任何方法可以将标记解析为字符串,如:

"<button id="3" onClick="print(this)">B3</button>"
kzmpq1sx

kzmpq1sx1#

您可以将节点传递给 new XMLSerializer() 像这样:

function print(element)
{
    console.log(element);
    var x = new XMLSerializer().serializeToString(element);
    console.log(x)
}
<button id="3" onClick="print(this)">B3</button>

输出:

<button id="3" onclick="print(this)">B3</button>
<button xmlns="http://www.w3.org/1999/xhtml" id="3" onclick="print(this)">B3</button>
hxzsmxv2

hxzsmxv22#

我建议使用 outerHTML 属性,该属性将返回该元素的完整html,如下所示:

function print(element) {
  var s = element.outerHTML;
  console.log(typeof(s));
  console.log(s);

  var t = element;
  console.log(typeof(t));
  console.log(t);
}
<button id="3" onClick="print(this)">B3</button>

变量 s 设置为 outerHTML 财产是一种财产 string .
变量 t 使用您发布的刚刚使用的原始代码 element 这是一个物体。我补充说 typeof 所以你可以看到 s 是一个 string 按要求。

相关问题