Javascript - 在另一个ajax请求中使用json数据

时间:2015-07-08 14:42:31

标签: javascript jquery ajax json

我试图使用从ajax请求返回的一些数据来构造一个字符串,然后需要使用ajax回发。但是,将数据分配给的变量不在第二个请求的范围内,因此返回的变量是未定义的'错误。在下面的示例中,我需要发布第一个请求返回的数据(

var cUrl = '/api/courses/a';
var pUrl = '/api/courses/b/pages/1?page_body=';
var bodyData = '';

$.getJSON(cUrl, function(cData){ 
    bodyData = '<div id="' + cData.id + '">' + cData.description + '</div>';
});
('body').on('click', '#add_btn, function(){
    $.ajax({
    type: 'POST',
    dataType: 'json',   
    url: pUrl + bodyData,
    headers: {"X-HTTP-Method-Override": "PUT"},
    success: function(result) {
    alert('Successfully Added!');
    }
    });
});

非常感谢任何帮助!非常感谢!

1 个答案:

答案 0 :(得分:0)

据我了解,只有拥有json响应数据时才想处理click事件,所以:

  1. 只需在getJSON回调中添加点击事件处理程序。

  2. 或者在获得json响应时触发自定义事件,并在自定义事件处理程序中为#add_btn创建单击事件处理程序。有了这个,#add_btn点击事件只会在你有json响应时触发。