javascript - 获取元素的 HTML 代码(innerHTML + 元素标签)

标签 javascript html

如何使用当前元素标签获取JavaScript中元素的HTML代码?

例如

<body><div><div class="big"><p>sometext</p></div></div></body>

var x = document.getElementsByClassName('big')[0]

现在我想要获取 x 的 HTML 代码:

'<div class="big"><p>sometext</p></div>'

不仅:

'<p>sometext</p>' like innerHTML.

还有比这更简单的方法吗?

var div = document.createElement("div"); 
div.id='_fooo'; var parent = x.parentNode; 
parent.insertBefore(div, x); 
div.appendChild(x); 
document.getElementById('_fooo').innerHTML

最佳答案

首先,您的 html block 有错误。 <input>是一个空元素,并且它不能有子元素。所以,

<input type="submit" class="big"><p>sometext</p></input>

不是有效的 HTML。

http://stackoverflow.com/questions/13629410/create-input-as-child-of-input

无论如何,您的问题的答案是“outerHTML”属性。

替换您的 <input>标记为 <div>

<div type="submit" class="big"><p>sometext</p></div>

var x = document.getElementsByClassName('big')[0];
var output = x.outerHTML // returns '<div type="submit" class="big"><p>sometext</p></div>'

关于javascript - 获取元素的 HTML 代码(innerHTML + 元素标签),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29080355/

相关文章:

javascript - 将类元素恢复为默认值

html - CSS 'position:relative;' 和 'top:xx%;' 标签组合在 chrome 中有效,但在任何非 webkit 浏览器(FF、IE、Opera 等)中无效

html - 如何让图标旋转

javascript - jQuery 中的 jQuery 函数均未按预期工作

html - 在表格单元格内居中 div 但文本左对齐

javascript - 使用 $.getJSON() 从 php 获取 json 数组到 javascript

php - 在另一个下拉列表中选择时从下拉列表中删除项目

javascript - JS使用第一个对象的键将对象数组转换为另一个对象数组

javascript - 推送在 firebase 监听器内不起作用

javascript - 将多个 addEventListener 添加到特定函数