2009-05-21 7 views
1

それらを結合スキーマの基本である...そこにこれ以上はあるが、これは私が達成するために必要なものの良いアイデアを与える:ここでソートXMLノード、その後、ここで

<item> 
    <name>This is some product name to sort with dictionary sort.</name> 
    <price value="29.99">$29.99</price> 
</item> 
<item> 
    <name>This is some product name to sort with dictionary sort.</name> 
    <price value="29.99">$29.99</price> 
</item> 

です

問題は、itemsSortedがjQueryオブジェクトの配列になりました。私は後で私が行うことができるように、私の項目のすべてが一緒に戻ってノードを取得する必要がありますが、ソート:

jQuery("item", xml).each(function() { 
    alert(jQuery("price", this).text()); 
}); 

答えて

3

itemsSortedアレイに追加する場合は、あなたが使用することができ...親()を取得(0)。 ; jQueryオブジェクトではなく配列にノードを追加するには

はその後、最後の反復後:

また
jQuery("item", xml).remove(); 
jQuery.each(itemsSorted, function() { 
    jQuery(xml).append(this); 
}); 

、あなたは「私は」あなたのforループで変数を定義していないことに注意する必要があります。これはグローバル変数になり、多くの奇妙な動作を引き起こす可能性があります。私はjQuery.eachを使用することをお勧めします。これは、forループ内のローカルスコープも提供するからです。

+0

驚くばかりです。キーは、新しい要素をオンザフライで作成し、jQueryオブジェクトを追加するか、配列を使用して要素を結合する方法を見つけようとしていたことでした。私がしなければならなかったことは、元のXMLオブジェクト文書を修正することでした。ありがとう! –

関連する問題