但现在我还有其他问题。我不知道如何从每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读取数据的Highcharts脚本
// 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);
});
});
感谢您的想法和帮助
答案 0 :(得分: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);
}
}
}