繁体   English   中英

如何从html标签获取前缀名称

[英]How to get prefix name from html tag

我有一些这样的输入html标签
输入:

<div fx-prop sc-alias="" fx-type="Organization"><div fx-name="Kirito">SAO <i fx-name="Asuna">World</i></div></div>

有什么方法可以获取包含方案前缀fx-的属性是来自该输入的方案标签

我想做的就是得到这样的输出
输出:

[
  {"prop":"", alias:"", "type":"Organization"},
  [
    {"name":"Kirito"},
    [
      {"name":"Asuna"}
    ]
  ]
]

该解决方案可能使用php或javascript,但我仍然没有得到答案

如果知道属性名称,则可以将Element.getAttribute()方法与Element.attributes结合使用:

 const elt = document.getElementsByTagName('div')[0]; const func = elt => { let res=[{}]; for (let i=0; i<elt.attributes.length; i++) { let attrName = elt.attributes[i].name; if (attrName.substring(0,2)=='fx') { res[0][attrName.substring(3)] = elt.getAttribute(attrName); } } for (let i=0; i<elt.children.length; i++) { res.push(func(elt.children[i])); } return res; } console.log(func(elt)); 
 <div fx-prop sc-alias="" fx-type="Organization"> <div fx-name="Kirito"> SAO <i fx-name="Asuna"> World </i> </div> </div> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM