每个帖子ID获取.ajax结果

时间:2013-04-02 17:07:36

标签: ajax jquery each

在Tumblr上,我有几个帖子,我正在尝试使用.ajax来专门获取数据。我正在使用.each来获取音频帖子的数据。但我遇到的问题是它返回所有帖子,而不仅仅是音频帖子。我甚至为每个特定的帖子ID指定了json路径。我知道我可能完全错了,因为我不太熟悉使用.ajax。

$('.audio.post').each(function() {
    var audiopostID = $(this).attr('id');
    var audioPath = '/api/read/json?id=' + audiopostID;

    $.ajax({
        url: audioPath,
        dataType: 'jsonp',
        timeout: 5000,
        success: function(data) {
            console.log(data);
        }
    });
});

正如我所提到的,它会返回所有帖子,而非我尝试使用audioPath获得的具体帖子。单独的json路径确实存在,似乎.ajax忽略了各个路径并抓住了所有东西。这是json前两个音频路径:

1 个答案:

答案 0 :(得分:1)

您正在从以下代码中提取ID字段:

<article class="post text brick" id="post-46308156089" data-postID="46308156089" data-permalink="http://testrtheme.tumblr.com/post/46308156089/test">

这里的ID是:

post-46308156089

根据您的URL看起来像:

/api/read/json?id=post-46308156089

尝试将代码更改为以下内容:

$('.audio.post').each(function() {
var fullaudiopostID = $(this).attr('id').split('-');
var audiopostID = fullaudiopostID[1];
var audioPath = '/api/read/json?id=' + audiopostID;

$.ajax({
    url: audioPath,
    dataType: 'jsonp',
    timeout: 5000,
    success: function(data) {
        console.log(data);
    }
});
});