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);
}