如何将ajax JSON对象存储到全局变量中以便在函数外访问

she*_*rly -2 javascript ajax jquery json

如何将成功函数返回的数据存储到全局变量中。

$("form").on("submit", function () {
    var data = {
        "action": "test"
    };
    data = $(this).serialize() + "&" + $.param(data);
    $.ajax({
        type: "POST",
        dataType: "json",
        url: "ajax2.php",
        data: data,
        success: function (data) {
            //How to store the above data into a global variable?
            $("#main_content").slideUp("normal", function () {
                for (i = 0; i < data.length; i++) {
                    $(".the-return").append("<div class='inside_return'>Name:" 
                            + data[i].name + "<br/>Id:" 
                            + data[i].id + "<br/>Pricing:" 
                            + data[i].rate + "<br/>Postcode:" 
                            + data[i].postcode + "<br/>Reputation:" 
                            + data[i].reputation + "<br/>Review Plus:" 
                            + data[i].plus + "<br/>Review Negative:" 
                            + data[i].neg + "<br/><h1>Availability</h1>Week Morning:" 
                            + data[i].weekM + "<br/>Week Afternoon:" 
                            + data[i].weekA + "<br/>Week Evening:" 
                            + data[i].weekE + "<br/>Weekend Morning:" 
                            + data[i].endM + "<br/>Weekend Afternoon:" 
                            + data[i].endA + "<br/>Week Evening:" 
                            + data[i].endE + "</div>");
                    //alert(data[i].name) 
                }
            }); //closes #main_content
        }
    });
    return false;
});
Run Code Online (Sandbox Code Playgroud)

此ajax 仅在提交搜索表单时执行。php查询返回结果后,我想让用户对json对象的数据进行排序。为了做到这一点,我需要将对象(在这种情况下为“数据”)存储到一个全局变量中。这是因为我有一个函数可以利用这些数据来执行排序!

Zee*_*Zee 5

为此定义一个 global variable

var newData;
$("form").on("submit", function () {....
//Your code
...
success: function (data) {

  newData = data; //Assign the `data` to the global variable here
  ....
Run Code Online (Sandbox Code Playgroud)

现在您可以newData在 AJAX 之外访问。