2017-06-26 14 views
0

同じ名前の異なるノードからXMLファイルの情報を取得しようとしています。プログラマーがもともとそれをタイプしたのと同様に、簡単に外挿された単一のノードから引き出されます。私は以前にクッキーに単一のアスペクトを分離するためにコードを変更しましたが、今はさらにそれを取る必要があります。複雑なフィルタを使用して、最大5つの異なるノードから値を識別し、それらを異なる変数にプッシュする必要があります。本質的に、私はdaypart名=何か(私はSQLの男ではなく、Web管理者です)という名前のdaypartという名前のノードから値を選択する必要があります。Jquery同じ名前の複数のxmlノードをフィルタリングする

jqueryについてはあまりよく分かりませんが、フィルターでこれを行う方法があります。あなたが見ることができるようにxmlファイルのスニペットを含めました。私は、現在のpartpartname =(この場合)朝食の場所にcarserservedとnummetgoalを引き出す必要があります。どんな助けでも大歓迎です。

<LaneMetrics> 
<DriveThruLane1ServiceGoal> 
    <AllDayParts> 
    <DayPart> 
     <AverageServiceTime>03:41</AverageServiceTime> 
     <RecentAverageServiceTime>03:15</RecentAverageServiceTime> 
     <TargetServiceTime>03:00</TargetServiceTime> 
     <AverageServiceTimeSeconds>222</AverageServiceTimeSeconds> 
     <RecentAverageServiceTimeSeconds>195</RecentAverageServiceTimeSeconds> 
     <TargetServiceTimeSeconds>180</TargetServiceTimeSeconds> 
     <PercentOnTarget>44%</PercentOnTarget> 
     <CarsServed>81</CarsServed> 
     <NumMetGoal>36</NumMetGoal> 
     <ReportingName>DriveThruLane 1</ReportingName> 
     <CurrentDaypartName>Breakfast</CurrentDaypartName> 
     <CurrentDaypartCategory>ServicePeriod</CurrentDaypartCategory> 
    </DayPart> 
    <DayPart> 
     <AverageServiceTime>03:58</AverageServiceTime> 
     <RecentAverageServiceTime>02:43</RecentAverageServiceTime> 
     <TargetServiceTime>04:00</TargetServiceTime> 
     <AverageServiceTimeSeconds>238</AverageServiceTimeSeconds> 
     <RecentAverageServiceTimeSeconds>163</RecentAverageServiceTimeSeconds> 
     <TargetServiceTimeSeconds>240</TargetServiceTimeSeconds> 
     <PercentOnTarget>57%</PercentOnTarget> 
     <CarsServed>14</CarsServed> 
     <NumMetGoal>8</NumMetGoal> 
     <ReportingName>DriveThruLane 1</ReportingName> 
     <CurrentDaypartName>Lunch</CurrentDaypartName> 
     <CurrentDaypartCategory>ServicePeriod</CurrentDaypartCategory> 
    </DayPart> 
+0

ようこそ、ツアーを確認するために時間を割いてください、 最小、完全、および検証可能な例を作成する方法:https://stackoverflow.com/help/mcve、具体的には *良い質問をする方法* https://stackoverflow.com/help/how-お問い合わせください - あなたが問題解決のために何かを考えてから助けに来る前に、あなたが問題を自分で解決しようと努力しているコード*に特定の問題を含めることによって、より良いフィードバックと役に立つ答えを得るでしょう。特定の問題のアイデアが出たら、投稿を編集できます。 – mjw

答えて

0

はJQuery: はXMLをループに.eachを試してみて、マッチした値を見つけます。

$(xml).find('DayPart').each(function(index){ 
    if($(this).find('CurrentDaypartName').text() == "Breakfast"){ 
     alert("carsserved :" + $(this).find('CarsServed').text() + " and NumMetGoal : " + $(this).find('NumMetGoal').text()) 
    } 
}); 

はJavaScript:

あなたは、以下のループを使用することができhttps://stackoverflow.com/tour:StackOverflowのに

xml = xml.getElementsByTagName('DayPart'); 

for(var i=0; i < xml.length;i++){  
    if(xml[i].getElementsByTagName('CurrentDaypartName')[0].innerHTML == "Breakfast"){ 
     alert("carsserved :" + xml[i].getElementsByTagName('CarsServed')[0].innerHTML + " and NumMetGoal : " + xml[i].getElementsByTagName('NumMetGoal')[0].innerHTML) 
    } 
} 
+0

それはうまくいくように見えますが、私はもう少しコードを掘り下げて、今は羊を感じます。それはjqueryではなく、javascriptです。私は、私が見たポストのためにjqueryに焦点を当てました。謝罪いたします。それはjavascriptのために変更することができますか? – RedLabelle

+0

上記のJavascriptと同等のスニペットを見つけることができます。 – Arun

+0

ありがとうございます。それは正しい道に私を置くはずです。 – RedLabelle

関連する問題