jQueryを使用して、すべてのノードで操作を実行するために、未知の構造のXML文書をトラバースするにはどうすればよいですか?jQueryを使用してXML文書のすべてのノードを移動する
私は各ノードにアクセスし、サブノードをチェックし、繰り返すことができる何らかの再帰関数を探しています。
jQueryを使用して、すべてのノードで操作を実行するために、未知の構造のXML文書をトラバースするにはどうすればよいですか?jQueryを使用してXML文書のすべてのノードを移動する
私は各ノードにアクセスし、サブノードをチェックし、繰り返すことができる何らかの再帰関数を探しています。
お探しのものは基本的にはdepth-first-searchです。
var depthFirstTraversal = function($root, callback) {
$root.children().each(function() {
depthFirstTraversal($(this), callback);
});
callback($root);
};
depthFirstTraversal($(selector), function($node) {
// do stuff with $node
});
編集:メイドフィドルhere
@ maenu-素晴らしい答えと例 - 感謝! – Yarin
<script>
var xml = "<xml></xml>";
$("#xml").html(xml);
</script>
<div id="xml"></div>
@ Peter-私の質問はうまくいきませんでした。私の編集を参照してください:すべてのものをhtmlにダンプするだけでなく、個々のノードにアクセスできる必要があります。 – Yarin
Yarin: う[本](http://stackoverflow.com/questions/1574113/looping-through-xml-withあなたは、このような何かを行うことができます-jquery)あなたの答えですか?編集:不特定の深さまたはタイトルのノードのユーザーメディアの回答を表示します。 – ericb
合意! +1 to maenu。 – ericb
このリンクは質問に答えるかもしれませんが、答えの本質的な部分をここに含めて参考にしてください。リンクされたページが変更された場合、リンクのみの回答は無効になります。 –