2012-04-17 19 views
0

:「」:特殊文字とタグを見つけるためにXML文書を解析し、私がしたい場合ははJQuery:私は次のように特定のタグを持つXML文書解析する必要が

 <result> 
      <ns0:Item> 
       <ItemID>1365</ItemID> 
       <ItemNumber>671150</ItemNumber> 
      </ns0:Item> 
      <ns0:Item> 
       <ItemID>1305</ItemID> 
       <ItemNumber>6700150</ItemNumber> 
      </ns0:Item> 
     </result> 
  1. 」をドキュメントに'ns0:Item'というタグが含まれている場合は、以下のコードではこれを行うことができません。
  2. コロン「:」文字を削除すると、XMLを正常に解析できます。

コード:

$(document).find('ns0:Item').each(function(){ 
    ....<br/> 
    ....<br/> 
    ....<br/> 
}); 

解析する方法を助けてください ':' XMLの文字。
ありがとうございました!

答えて

3

コロンは、名前空間接頭辞と要素名を区切ります。接頭辞の値は意味的に重要ではありません。重要なのは名前空間文字列です。あなたのケースでは、ns0はあなたのコードに表示されていない文字列を指します。おそらくXML文書の最上部近くのどこかで指定されます。あなたが変数としてdocumentを使用

success: function(xml) { 
    var ns = "uri:whatever"; // the actual namespace, not the prefix 
    $(xml).find('Item').each(function(){ 
     if ($(this).get(0).namespaceURI == ns) { 
      .... 
     } 
    }); 
} 

指定された接頭辞で項目を選択して、あなたはAJAX呼び出しのsuccessコールバックで選択を行っていると仮定するためには、私はあなたがこのような何かをしたいと思いますXML文書を表すコード内の名前。それは混乱しているようです。私はdocumentという名前を使ってブラウザのHTML文書以外のものを参照することをお勧めします。

+0

名前空間の定義は、XMLの上部にあります。 Thanks Chheso、私は名前空間プレフィックス 'ns0'に言及せずに 'Item'タグを検索することができました。 – fmjaguar3

+0

命名規則についての簡単な助けもありがとう。私もそれを組み込んだ! – fmjaguar3

関連する問題