javascript - 无法弄清楚如何使用 AJAX 从 JSON 数据对象获取特定值

标签 javascript jquery json ajax

我是 JSON 和 AJAX 的初学者。我有一个包含 JSON 数据对象的 PHP 文件,我想解析该文件以从数组中获取特定值。 例如我想获取 ID="almCrit":

这是我的 JSON 对象:

$currentArrayData['configAlm'] = array(
  array('blocName' => 'blockAlarmeContent',     'blocLVTwoName' => 'boxLV2Content', 'label' => 'Criticité',         'id' => 'almCrit'),
  array('blocName' => 'blockAlarmeContent', 'blocLVTwoName' => 'boxLV2Content', 'label' => 'Sans supervision',  'id' => 'almSansSup'),
  array('blocName' => 'blockAlarmeContent', 'blocLVTwoName' => 'boxLV2Content', 'label' => 'Non nominale',      'id' => 'almNonNom)
);

这是我尝试做的:

$.ajax({
     url: 'Pages/index.php',
     type:  'get',
     dataType: 'json',
     data: 'action=loadBlocSite',
     success:function(data){                
        arrayOfData = data;         
        currentValue = arrayOfData;                        
        $.each(arrayOfData['configAlm'], function(currentIdx, currentValue){
            console.log('alarme : '+ arrayOfData['configAlm']);  
        });                 
    }
});

console.log('alarme : '+ arrayOfData['configAlm']); 输出:-

alarme : [object Object],[object Object],[object Object]

我想获取第一个[object Object]的ID

我尝试了这个 console.log('alarme : '+ arrayOfData['configAlm'].id); 但它给了我

undefined

有人可以帮我弄清楚它是如何工作的吗?谢谢

最佳答案

事实上,您在这里所做的是在 .each 的每次迭代中打印 array,并且您试图访问 id 数组属性。

您需要记录 currentValue 内容而不是 arrayOfData:

$.each(arrayOfData['configAlm'], function(currentIdx, currentValue){
   console.log('blocName Id: '+ currentValue['blocName'].id);  
});

为了更好地了解这里发生的情况,您可以像这样打印数组的整个迭代元素:

$.each(arrayOfData['configAlm'], function(currentIdx, currentValue){
   console.log(JSON.stringify(currentValue));  
});

关于javascript - 无法弄清楚如何使用 AJAX 从 JSON 数据对象获取特定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45502279/

相关文章:

javascript - JQuery 删除第一个元素

jQuery .attr() 方法返回未定义

c# - JSON空字符串为null

复选框上的 JavaScript 不起作用

javascript - JavaScript 中的双重或三重(甚至多重)比较

javascript - 为什么在我的 json 格式正确时使用 $.ajax() 时 jsonp 返回 "Unexpected Token :"?

javascript - 我如何从这个 Jsonarray 中删除 T 和 Z

php - CMS对教程博客的建议

javascript - 在我刷新之前,Google map 不显示

java - 基于 Enum 的 Jackson 多态反序列化