用ajax在Json中获得价值

时间:2018-02-28 15:10:54

标签: javascript jquery json ajax

我有一个返回JSON的API,如下所示:

from

我想在我的标签中替换名称和成员,以及#34; Code"我想用ajax做到这一点。如何实现与Code的匹配?

这是我的实施:

[{
    "Code": "001",
    "Name": "xyz",
    "Members": [{
        "FullName": "User1"
    }]
}, {
    "Code": "002",
    "Name": "asd",
    "Members": [{
        "FullName": "User2"
    }]
}]

4 个答案:

答案 0 :(得分:1)

您可以使用javascript的过滤器并映射数组的功能。

让我们假装您将用户输入的代码存储在此codeNumber var

var codeNumber = '002';

您的成员数组:

var members = [{"Code":"001","Name":"xyz","Members":[{"FullName":"User1"}]},{"Code":"002","Name":"asd","Members":[{"FullName":"User2"}]}];

按代码过滤数组的功能:

var byCode = function(member) {
  return member.Code === codeNumber;
};

获取已过滤成员名称的函数:

var getName = function(member) {
  return member.Name;
};

您获得会员的姓名

var memberName = members.filter(byCode).map(getName).toString();

console.log(memberName);

答案 1 :(得分:0)

我不相信AJAX和简单的JSON可以做你想做的事。

JSON是一种构造对象的方法 - JavaScript Object Notation。它只构建数据。

AJAX是一种制作HttpRequest的异步方法。它要求服务器提供一些东西。

如果您使用AJAX请求JSON文件。您将获得JSON数据。

我相信你有两个选择:

  1. 使用AJAX从服务器请求数据。然后,服务器必须加载JSON文件,找到正确的数据并将正确的数据返回给AJAX。
  2. 使用AJAX获取JSON数据。使用JavaScript查找正确的数据。

答案 2 :(得分:0)

在成功处理程序中,您可以比较以下内容:

success: function(response) {
    // yourObject that matches the code 
    var yourObject = response.filter(function(item) {
       return item.Code === Code
    });
    // wherever you want to show this name
    $("body").text(yourObject.Name);
}

答案 3 :(得分:0)

$.ajax({
       type: "get",
       url: "/mvc/ComplaintHandlerSquadGetListPage",
       success: function (result) {
           jQuery(result).each(function(i, item){
           if(item.Code == Code)
           {
               $('#myid').text(item.Name);
           }
       },
       error: function (ex) {
           alert(ex.title);
       }
});