0

しかし今、私は別の問題を抱えています。5秒ごとにXMLからcwokから値を取得する方法がわかりません

XML ファイル

<user name="Name1" status="online" ip="0.0.0.0">
 <stats>
   <cwok>100</cwok>
   <cwnok>0</cwnok>
   <cwignore>0</cwignore>
 </stats>
</user>
<user name="Name2" status="online" ip="0.0.0.0">
 <stats>
   <cwok>200</cwok>
   <cwnok>0</cwnok>
   <cwignore>0</cwignore>
 </stats>
</user>

XML からデータを読み取るハイチャート スクリプト

 // Load the data from the XML file
 $.get('oscamapi.html?part=userstats', function(xml) {

     // Split the lines
     var $xml = $(xml);

     // push series
     $xml.find('user').each(function(i, series) {

          var seriesOptions = {
              name: $(series).attr('name'),
              data: []
              };

          // push data points
          $(series).find('stats cwok').each(function(i, point) {
                  seriesOptions.data.push(
                          parseInt($(point).text())
                   );
          });

         // add it to the options
         options.series.push(seriesOptions);
     });
     var chart = new Highcharts.Chart(options);
   });
});

あなたのアイデアと助けをありがとう

4

1 に答える 1

0

setInterval() で ajax を呼び出してから、データを取得する必要があります。secong ユーザー セクションからデータを取得したいとします。

    <user name="Name2" status="online" ip="0.0.0.0">
 <stats>
   <cwok>200</cwok>
   <cwnok>0</cwnok>
   <cwignore>0</cwignore>
 </stats>
</user>

したがって、XML に対して同じパーサーを使用できますが、ユーザー行は変更されています。

$xml.find('user[name="Name2"]')

AJAX:

 chart:{
    events:{
       load:function(){
          setInterval(function(){
              $.ajax()...
          },1000);
       }
    }
}
于 2013-06-05T09:00:18.273 に答える