2013-06-21 1 views
-2

Я пытаюсь извлечь значение из результата json, который возвращается из вызова REST в моем javascript. Ниже JSON результат RESTКак получить определенное значение из результата возврата JSON из вызова REST

{ 
    "self": "http://example.com/rest/api/2/project/MTS/role/10002", 
    "name": "Administrators", 
    "id": 10002, 
    "description": "A project role that represents administrators in a project", 
    "actors": [{ 
     "id": 10803, 
     "displayName": "Administrator ", 
     "type": "atlassian-user-role-actor", 
     "name": "admin", 
     "avatarUrl": "/secure/useravatar?size=small&avatarId=10108" 
    }, { 
     "id": 10590, 
     "displayName": "jira-administrators", 
     "type": "atlassian-group-role-actor", 
     "name": "jira-administrators", 
     "avatarUrl": "/secure/useravatar?size=small&avatarId=10123" 
    }] 
} 

из этого результата нужно только принести все актеры называют Может кто-нибудь, пожалуйста, помогите мне с ниже сценария

function getName() 
{ 
var user; 
    $.ajax({ 
     url: "/rest/api/2/project/MITS/role/10002", 
     type: 'get', 
     dataType: 'json', 
     async: false, 
     success: function(data) { 
      user = data; 
     } 
    }); 
    return user; 
} 

выше сценарий не правильно Пожалуйста, помогите

+0

Что такое выход 'console.log (пользователя)'? Попробуйте поместить его и посмотрите, что-то получилось в консоли браузера. – Jai

ответ

2

функция успеха, используйте этот

users = []; // you will store the names here 
$.each(data.actors, function(i,actor){ 
    if(actor.type === "atlassian-user-role-actor"){ 
     users.push(actor.name); 
    } 
}) 

пользователей вы получите имена актеров

Если вы хотите скопировать вставить JSON в http://www.jsoneditoronline.org/ и вы будете четко видеть, что объект «данными» имеет и как получить к нему доступ.

+0

Спасибо Антонису. Это помогло – Mizan

+0

Привет Антонису, еще одна вещь. Мне нужно получить только тех актеров, где type = «atlassian-user-role-actor». Пожалуйста, вы можете помочь – Mizan

+0

Я отредактировал его, это просто, я думаю. – AntouanK

1

Вы можете получить массив актеров путем доступа к нему, как data.actors

Тогда итерации по массиву с помощью $.each или for loop

$.each(data.actors, function(i, val) { 
    console.log('Actor name :: ' + val.name) 
}); 
Смежные вопросы