innerhtml转成json
时间: 2023-10-17 11:35:16 浏览: 124
转换成json
4星 · 用户满意度95%
要将innerHTML转换为JSON,您可以按照以下步骤进行操作:
1. 首先,您需要获取要转换的HTML元素的innerHTML内容。可以使用以下代码来获取元素的innerHTML内容:
```
var htmlString = document.getElementById("elementId").innerHTML;
```
其中,"elementId"是您要转换为JSON的HTML元素的id。
2. 然后,将获取到的innerHTML字符串转换为DOM对象。您可以使用以下代码将字符串转换为DOM对象:
```
var parser = new DOMParser();
var dom = parser.parseFromString(htmlString, "text/html");
```
3. 接下来,您需要将DOM对象转换为JSON格式。可以使用以下方法来实现:
```
function domToJson(node) {
var obj = {};
obj.tagName = node.tagName;
obj.nodeType = node.nodeType;
obj.nodeValue = (node.textContent || "").replace(/(\r|\n)/g, "").replace(/^\s|\s$/g, "");
// 处理元素的属性
if (node.attributes && node.attributes.length > 0) {
obj.attributes = {};
for (var j = 0; j < node.attributes.length; j++) {
var attribute = node.attributes[j];
obj.attributes = attribute.value;
}
}
// 处理元素的子节点
if (node.childNodes && node.childNodes.length > 0) {
obj.childNodes = [];
for (var i = 0; i < node.childNodes.length; i++) {
obj.childNodes.push(domToJson(node.childNodes[i]));
}
}
return obj;
}
var json = domToJson(dom.documentElement);
```
现在,您已经将innerHTML转换为JSON格式了。可以使用`json`变量来访问转换后的JSON数据。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [有没有将html转成json的方法呢?](https://blog.csdn.net/weixin_30802399/article/details/117712202)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
阅读全文