Javascript Can';我不知道如何使用AJAX从JSON数据对象获取特定值

Javascript Can';我不知道如何使用AJAX从JSON数据对象获取特定值,javascript,jquery,json,ajax,Javascript,Jquery,Json,Ajax,我是JSON和AJAX的初学者。我有一个包含JSON数据对象的PHP文件,我想对其进行解析以从数组中获取特定值。 例如,我想要得到ID=“almCrit”: 这是我的JSON Obj: $currentArrayData['configAlm'] = array( array('blocName' => 'blockAlarmeContent', 'blocLVTwoName' => 'boxLV2Content', 'label' => 'Criticité',

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

这是我的JSON Obj:

$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'])输出:-

警报:[对象对象],[对象对象对象],[对象对象对象]

我想获取第一个
[object object]

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

未定义

有人能帮我弄清楚它是怎么工作的吗?谢谢你

这是:-

$.each(arrayOfData['configAlm'], function(currentIdx, currentValue){
   console.log('alarme : '+ arrayOfData['configAlm']);  
});  
需要:-

$.each(arrayOfData['configAlm'], function(currentIdx, currentValue){
   console.log('Id : '+ currentValue.id);  
});  
您需要在那里使用
currentValue

如果要应用某些条件检查,可以执行以下操作:-

$.each(arrayOfData['configAlm'], function(currentIdx, currentValue){
   if(currentValue.id =="almCrit"){
     return false; // Will stop iteration immediately when id==almCrit
   } 
});  
这:-

需要:-

$.each(arrayOfData['configAlm'], function(currentIdx, currentValue){
   console.log('Id : '+ currentValue.id);  
});  
您需要在那里使用
currentValue

如果要应用某些条件检查,可以执行以下操作:-

$.each(arrayOfData['configAlm'], function(currentIdx, currentValue){
   if(currentValue.id =="almCrit"){
     return false; // Will stop iteration immediately when id==almCrit
   } 
});  

实际上,您在这里所做的是在
的每个迭代中打印
数组
。每个
,并且您试图访问
数组
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));  
});

实际上,您在这里所做的是在
的每个迭代中打印
数组
。每个
,并且您试图访问
数组
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));  
});

谢谢,这是我在试图找到解决方案时所做的,但对于我的案例,我做了一个for循环+相同的if条件,我将尝试这一个。非常感谢你的帮助和解释,这对我理解事物有很大帮助。。如果条件有效;我把
$('#boxLV2Content').empty()放进去因为在我的例子中,每当我点击id='almCrit'时,它不会清除旧的来显示新的…它会不断重复…空的()不起作用,但这不是什么大问题,…再次感谢:)@Zinebs很高兴帮助你,伙计:):@Zinebs没关系。谢谢谢谢你这是我在试图找到解决方案时所做的,但对于我的案例,我做了一个for循环+相同的if条件,我将尝试这一个谢谢你的帮助和解释,这对我理解事物有很大帮助。。如果条件有效;我把
$('#boxLV2Content').empty()放进去因为在我的例子中,每当我点击id='almCrit'时,它不会清除旧的来显示新的…它会不断重复…空的()不起作用,但这不是什么大问题,…再次感谢:)@Zinebs很高兴帮助你,伙计:):@Zinebs没关系。谢谢