我试图访问时间,直到下一班巴士到达阿什维尔NC的给定公交车站的Live Feed公交系统,但我一直返回两个控制台错误:“时间未定义”和“无法读取未定义的geElementsbyTagName的属性” “
您可以使用“470”作为考试stopID
来查看XML文件。
虽然我不确定我是否正确地将ID添加到URL上,但我确保添加了正确的停止ID。如果元素嵌套在另一个元素中,那是一个问题吗?
var feedURL = "http://webservices.nextbus.com/service/publicXMLFeed?command=predictions&a=art&stopId="+stopID;
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function(){
if(this.readyState == 4 && this.status == 200){
attribute(this);
}
};
xhttp.open("GET", feedURL, true);
xhttp.send();
function attribute(feedURL){
var y;
var xmlDoc = xml.responseXML;
var time = "";
y = xmlDoc.getElementsbyTagName('prediction');
time = x.getAttribute('minutes');
}
console.log(time);
我期待在公共汽车到达给定站点之前给出的分钟数。
您试图将变量time
的值记录在您定义的函数之外。您可以将代码更改为此,这应该有效:
function attribute(feedURL){
var y;
var xmlDoc = xml.responseXML;
var time = "";
y = xmlDoc.getElementsbyTagName('prediction');
time = x.getAttribute('minutes');
console.log(time);
}