我有一些简单的html,有点像这样
<a href="" data-type="" data-id="" data-tags="" id="" class="">balrbalr</a>
我希望能够将<a>
的全部内容作为字符串。
我知道你可以使用.html
获取内部html,但是如果我使用
var string = $('a').html();
如果会返回,balrblabrlabr
如果我string = $('a').parent.html();
我会在父母内部获得所有<a>
。
我如何才能获得自己的完整html内容?
答案 0 :(得分:5)
您可以使用DOM元素的原生javascript outerHTML
属性:
var string = $('a')[0].outerHTML;
<强> Live DEMO 强>
元素DOM接口的outerHTML属性获取描述元素(包括其后代)的序列化HTML片段。可以将其设置为使用从给定字符串解析的节点替换元素。
如果您希望获得多个元素的outerHTML,可以使用jQuery map
函数,如下例所示:
var str = $('#foo a').map(function() {
return this.outerHTML;
}).get();
答案 1 :(得分:0)
将元素的id设置为“a”,然后使用此函数
function msg() {
var attrib="";
var el =document.getElementById('a');
for (var i = 0; i < el.attributes.length; i++) {
attrib = attrib + ' ' + el.attributes.item(i).nodeName + ' = "' + el.attributes.item(i).nodeValue + '"';
}
alert(attrib);
}