2015-01-27 4 views
-3

Как получить все значения из полеев ключевых со следующей JSON отвалов с помощью JQuery:Получить все значения из JSON Key (JQuery)

{ 
    "fields": [ 
    { 
     "label": "Name", 
     "field_type": "text", 
     "required": true, 
     "field_options": { 
     "size": "medium" 
     }, 
     "cid": "c1" 
    }, { 
     "label": "Email", 
     "field_type": "text", 
     "required": true, 
     "field_options": { 
     "size": "medium" 
     }, 
     "cid": "c2" 
    } 
    ] 
} 

То, что я хочу получить только:

{ 
    "label": "Name", 
    "field_type": "text", 
    "required": true, 
    "field_options": { 
    "size": "medium" 
    }, 
    "cid": "c1" 
}, { 
    "label": "Email", 
    "field_type": "text", 
    "required": true, 
    "field_options": { 
    "size": "medium" 
    }, 
    "cid": "c2" 
} 
+1

взять несколько руководств по использованию объектов javascript. Это действительно тривиально. – charlietfl

+0

Вы хотите, чтобы вы получили '[{/*...*/}, {/*...*/}]' вместо '{/*...*/}, {/ * ... * /} '? – Oriol

ответ

0
var originalJson = '{"fields":[{"label":"Name","field_type":"text","required":true,"field_options":{"size":"medium"},"cid":"c1"},{"label":"Email","field_type":"text","required":true,"field_options":{"size":"medium"},"cid":"c2"}]}' 

var fieldsJson = JSON.parse(originalJson).fields; 

, если вы хотите, чтобы как строка JSON добавить

var fieldsJsonString = JSON.stringify(fieldsJson) 
+2

за исключением полей - массив, поэтому 'JSON.parse (originalJson) .fields [0];' – gknicker

+0

, который возвращает только первый объект внутри полей json, я принимаю (формирую сам вопрос), он хочет все из них – lascort

+0

PERFECT ! Большое спасибо! – Luxor

0

Сохраните главный json в переменной. Вы можете получить доступ к его ключу с помощью:

variable.fields

0
var o = {"fields":[{"label":"Name","field_type":"text","required":true,"field_options":{"size":"medium"},"cid":"c1"},{"label":"Email","field_type":"text","required":true,"field_options":{"size":"medium"},"cid":"c2"}]}; 
var labels = o.fields 

Вы можете получить доступ к ярлыкам через for.

for(var i = 0; i < labels.length; i++){ 
    console.log(labels[i]); 
} 
0

Когда я использую

var obj = jQuery.parseJSON(payload); 
    console.log(obj.fields); 

я получаю:

[Объект {LABEL = "E-mail", field_type = "текст", требуется = правда, больше ...}, объект {label = "Name", field_type = "text", required = true, more ...}, Object {label = "Subject", field_type = "text", required = true, more ...}, Object {label = "Сообщение", field_type = "paragraph", required = true, more ...}]

Как добраться:

{"label":"Name","field_type":"text","required":true,"field_options":{"size":"medium"},"cid":"c1"},{"label":"Email","field_type":"text","required":true,"field_options":{"size":"medium"},"cid":"c2"} 
+0

проверить обновление моего ответа, оно должно охватывать это, если вы используете строку stringify – lascort

Смежные вопросы