【问题标题】:Ask for JSON API WITH AJAX使用 AJAX 请求 JSON API
【发布时间】:2020-07-06 16:49:21
【问题描述】:

我如何使用这个 json?

我先使用 json 很好,但我使用 json 两个不工作,

[
    {
        "name": "bryan",
        "class": "12",
        "like": "game",
        "sport": "football"
    }
]

该代码还可以,但如果我使用 javascript,代码 2 对我不起作用,对不起,我是初学者尝试 json api

[
    {
        "attributes": {
        "name": "bryan",
        "class": "12",
        "like": "game",
        "sport": "football"
        }
    }
]   

我用这个 javascript 回调第一个代码

const Url='datajson.json';
$.ajax({
  url: Url,
  type:"GET",
  success: function(result){
   $('.name').html(result[0].name);
   $('.class').html(result[0].class);
   $('.like').html(result[0].like);
   $('.sport').html(result[0].sport);
  }
})

【问题讨论】:

  • 你能说得更具体点吗?什么不工作?

标签: javascript json ajax api


【解决方案1】:

获取属性 arr

const Url='datajson.json';
$.ajax({
  url: Url,
  type:"GET",
  success: function(result){

   $('.name').html(result[0].attributes.name);
   $('.class').html(result[0].attributes.class);
   $('.like').html(result[0].attributes.like);
   $('.sport').html(result[0].attributes.sport);
  }
});

【讨论】:

    【解决方案2】:

    这是因为第二个 json 在 attributes 属性中具有您需要的属性,在这种情况下,您的成功函数需要类似于:

    function(result){
       $('.name').html(result[0].attributes.name);
       $('.class').html(result[0].attributes.class);
       $('.like').html(result[0].attributes.like);
       $('.sport').html(result[0].attributes.sport);
     }
    

    如果你可以使用 ES6 的特性,你就可以进行解构,你的函数将是:

    function(result){
      const {name, class, like, sport} = result[0].attributes
    
      $('.name').html(name);
      $('.class').html(class);
      $('.like').html(like);
      $('.sport').html(sport);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-12
      • 2017-02-19
      • 2017-09-09
      • 2012-05-02
      • 1970-01-01
      • 2013-04-23
      • 1970-01-01
      • 2023-03-13
      相关资源
      最近更新 更多