Laravel ajax响应获得价值

时间:2018-04-04 14:59:20

标签: javascript jquery ajax laravel

我有这样的ajax:

$(".cq").on("input", function() {
  $.ajax({
    url: "create/reefFormAjax",
    type: "POST",
    data: $(this.form).serialize(),
    success: function(data) {
      callback(data);
    }
  });
});
function callback(response) {
  $(".sum_whl").val(response);
  $(".sum_rtl").val(response);
}

所以在我的控制器里我有这样的东西:

$test = $request->all();
return json_encode($test);

然后我将数据检索回我的视图:

  {
    "material": "0",
    "mquantity": null,
    "cq": "2",
    "sum_rtl": null,
    "sum_whl": null
  }

问题是如何从响应中获取每个值?

我尝试$(response).find('cq').val()filter,但我有错误。

有什么想法吗?

4 个答案:

答案 0 :(得分:0)

当你从laravel返回一个json(或数组)时,它会自动变成一个js对象。所以你可以像这样访问:

function callback(response) {
  $(".sum_whl").val(response.sum_whl);
  $(".sum_rtl").val(response.sum_rtl);
}

答案 1 :(得分:0)

/console.log(response.data[0])必须正常工作。因为它的json对象。

试一试。

console.log(reponse.material)

答案 2 :(得分:0)

您获得的结果是JSON响应

  var response = 
  {
    "material": "0",
    "mquantity": null,
    "cq": "2",
    "sum_rtl": null,
    "sum_whl": null
  };

如果JSON在您的response变量中,您只需访问此元素

即可

response.material; // should print 0 response.cq; // will print 2

答案 3 :(得分:0)

我解决了这个问题,我使用return json_encode而不是return response-> json($ var);所以我抓住了我的价值观!