Javascript/jQueryを使用してHTML要素からすべての属性を取得する 質問する

Javascript/jQueryを使用してHTML要素からすべての属性を取得する 質問する

HTML 要素内のすべての属性を配列に入れたいです。たとえば、jQuery オブジェクトがあり、その HTML は次のようになります。

<span name="test" message="test2"></span>

一つの方法は、前述のXMLパーサーを使用することですここただし、オブジェクトの HTML コードを取得する方法を知る必要があります。

他の方法は jQuery で作成することですが、どのようにすればよいでしょうか? 属性の数と名前は汎用的です。

ありがとう

ちなみに、document.getelementbyid または同様の方法で要素にアクセスすることはできません。

ベストアンサー1

DOM 属性だけが必要な場合は、attributes要素自体のノード リストを使用する方が簡単でしょう。

var el = document.getElementById("someId");
for (var i = 0, atts = el.attributes, n = atts.length, arr = []; i < n; i++){
    arr.push(atts[i].nodeName);
}

これにより、配列に属性名のみが入力されることに注意してください。属性値が必要な場合は、次のnodeValueプロパティを使用できます。

var nodes=[], values=[];
for (var att, i = 0, atts = el.attributes, n = atts.length; i < n; i++){
    att = atts[i];
    nodes.push(att.nodeName);
    values.push(att.nodeValue);
}

おすすめ記事