1

我有一些简单的 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 内容?

4

2 回答 2

5

您可以使用outerHTMLDOM 元素的原生 javascript 属性:

var string = $('a')[0].outerHTML;

现场演示

元素 DOM 接口的 outerHTML 属性获取描述元素(包括其后代)的序列化 HTML 片段。它可以设置为用从给定字符串解析的节点替换元素。

MDN


如果您希望获取多个元素的 outerHTML,可以使用 jQuerymap函数,如下例所示:

var str = $('#foo a').map(function() {
    return this.outerHTML;
}).get();

现场演示

于 2012-05-19T23:51:40.197 回答
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);
    }
于 2012-05-20T00:08:53.887 回答