将JSON响应放入var中并输出


put JSON response in var and output it

我有一个表单,它将邮政编码+门牌号发送到外部页面,外部页面会向我发送一个带有地址信息的json响应。

这一切都有效,但我如何获取这个json响应?将它放入一个变量中,然后在我的页面上再次输出。

在这里我做了一个页面的帖子

function validate() {
  var postc = $('#postc').val();
  var huisnr = $('#huisnr').val();
  $.ajax({
    url: 'postcodecheck.php',
    type: 'POST',
    dataType: 'json',
    data: 'postc=' + postc + '&huisnr=' + huisnr,
    cache: false
  });

我在postcodecheck.php 的标题中得到了这个响应

{"location":[{"city":"Amsterdam","postcode":"1012NX","straat":"Kalverstraat","nummer":1}]}

如何获取这个响应并将其放入变量中?

任何帮助都将不胜感激。

$.ajax({
    url: 'postcodecheck.php',
    type: 'POST',
    dataType: 'json',
    data: 'postc=' + postc + '&huisnr=' + huisnr,
    cache: false,
    success: function(data) {
        $.each(data.location, function(index, value) {
            console.log("City " + value.city)
            console.log("postcode " + value.postcode)
            console.log("straat " + value.straat)
        })
    }
});

添加成功和内部成功您可以在数据上迭代

演示

您可以使用请求回调来获取检索到的数据&将其放入可变

$.ajax({ 
            url: 'postcodecheck.php',
            type: 'POST',
            dataType: 'json',
            data: 'postc=' + postc + '&huisnr=' + huisnr,
                    cache: false
})
.done(function(data) {
console.log(data);});
ajax调用有另一个属性success,您需要使用它
var store = '';
$.ajax({
    url: 'postcodecheck.php',
    type: 'POST',
    dataType: 'json',
    data: 'postc=' + postc + '&huisnr=' + huisnr,
    cache: false,
    success: function(result){
            store = result;
        }
});

结果

console.log(store); //{"location":[{"city":"Amsterdam","postcode":"1012NX","straat":"Kalverstraat","nummer":1}]}

您需要使用done方法并将data作为参数传递给回调函数,然后回调函数将包含来自服务器的响应。

 $.ajax({
     url: 'postcodecheck.php',
     type: 'POST',
     dataType: 'json',
     data: 'postc=' + postc + '&huisnr=' + huisnr,
     cache: false
   }).done(function(data) {
        var result = data;
        alert(result);
   });