私はjson文字列を持っています
[{"part_id":"66","part_name":"Palet crate","part_image":"crate-box.gif","0":{"language_data_content":"Length [mm]","pgd_value":"1000"},"1":{"language_data_content":"Width [mm]","pgd_value":"800"},"2":{"language_data_content":"Height [mm]","pgd_value":"800"},"3":{"language_data_content":"Thickness [mm]","pgd_value":"20"}}]
これは、コントローラーでのアクションからの Ajax 応答の一部です
for($i=0;$i<count($partlist);$i++){
$jsondata[$i]['part_id'] = $partlist[$i]['part_id'];
$jsondata[$i]['part_name'] = $partlist[$i]['part_name'];
$jsondata[$i]['part_image'] = $partlist[$i]['part_image'];
$gdata = $pgdata->getPropertyDimensions($partlist[$i]['part_id'],1);
if(count($gdata) > 0){
$j = 0;
foreach($gdata as $g){
$jsondata[$i][$j]['language_data_content'] = $g->language_data_content;
$jsondata[$i][$j]['pgd_value'] = $g->pgd_value;
$j++;
}
}
}
echo json_encode($jsondata);exit;
1 つのパーツ ID に対して複数のpgd_valueが存在する可能性があります。この json 配列には、1 つのパーツ ID と 4 つのpgd_valueしかありません。この json を次のようにループする ajax 成功関数では
success:function(msg){
str = '';
if(msg.length > 0){
for(j=0;j<msg.length;j++){
str +='<span>'+msg[j]['part_id']+'</span>';
// here i want to loop those four **pgd_value** values from json is it possible ?
}
}
}