私はJqueryにかなり慣れていません。複数のページから情報を取得するプラグインを実行しようとしています。ajax呼び出しを実行してxmlを取得し、1つのノードの特定のテキストを選択したい場合、xmlcは次のようになります。
<status>
<item>
<name>NameA</name>
<serviceUrl>theURL</serviceUrl>
<timeout>184</timeout>
<errorMessage></errorMessage>
<statusMessage>SpecificMessage</statusMessage>
</item>
<item>
<name>NameB</name>
<serviceUrl>theURL</serviceUrl>
<timeout>200</timeout>
<errorMessage></errorMessage>
<statusMessage>SpecificMessageB</statusMessage>
</item>
<item>
<name>NameC</name>
<serviceUrl>theURL</serviceUrl>
<timeout>300</timeout>
<errorMessage></errorMessage>
<statusMessage>SpecificMessageC</statusMessage>
</item>
</status>
そして、私が動作させることができない私のコードは次のとおりです。
function parseXml(xml)
{
item = getItemFor(xml, "NameB");
console.log("name: " + item.find("name").text());
console.log("serviceUrl: " + item.find("serviceUrl").text());
console.log("timeout: " + item.find("timeout").text());
}
var getItemFor= function(xml, name){
$(xml).find("item").each(function(){
var itName = $(this).find("name").text();
if (itName === name){
console.log("Found: " + name);
return $(this);
}
});
}
結論として、getItemFor関数からnameBという名前のxmlアイテムNODEを取得できず、.each()ループを停止することもできません。