大家好我正在做我的第一个ajax应用程序,已经有很多,但它并没有为标题做准备。 Json用这种方式:“json.query.results.channel.item.title”
我返回所有数组,但我无法设置标题的路径,有人可以帮助我吗?
jQuery的:
var main = function () {
var url = "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20xml%20where%20url%3D'http%3A%2F%2Frss.cnn.com%2Fservices%2Fpodcasting%2Fac360%2Frss.xml'%20AND%20itemPath%3D%22%2F%2Fchannel%22&format=json&diagnostics=true&callback=?";
$.ajax({
type: 'GET',
url: url,
async: false,
jsonpCallback: 'jsonCallback',
contentType: "application/json",
dataType: 'jsonp',
success: function (json) {
console.dir(json.query.results.channel.item);
},
error: function (e) {
console.log(e.message);
}
});
var titles = item.map(function (item) {
return item.title;
});
$(".container-list-podcast ul").append('<li>' + titles.join('</li><li>'));
}(jQuery);
答案 0 :(得分:1)
您的item
变量未定义:您拥有的唯一item
是json.query.results.channel
对象的属性,该属性目前仅在success
范围内可用处理程序。此外,使用async:false
不能与jsonp一起使用,因此将所有数据处理代码放在成功处理程序中:
success: function (json) {
var titles = json.query.results.channel.item.map(function (item) {
return item.title;
});
$(".container-list-podcast ul").append('<li>' + titles.join('</li><li>'));
},