【发布时间】:2026-01-22 08:20:21
【问题描述】:
我得到 JSON 格式的结果,其中对象可以在对象或数组中。单击函数时,获取值并找到该值的对象并附加值
var result={
"diagnosis":{
"Diagnosis":{
"head":"Diagnosis",
"head_id":"18",
"param":{
"10436":"Abortion",
"10452":"Abscess",
}
},
"ADR-ART":{
"head":"ADR-ART",
"head_id":"19",
"param":{
"120":"A K I",
"66":"Abdominal Pain
}
},
"ADR-Rx":{
"head":"ADR-Rx",
"head_id":"20",
"param":{
"66":"Abdominal Pain",
"67":"Alopecia",
"34":"Anaemia",
"53":"Anorexia",
}
},
},
"examination":{
"General":{
"head":"General",
"head_id":"8",
"param":{
"33":"Anemia",
"27":"Apthous Ulcers",
"35":"Ascitis",
}
},
"Skin":{
"head":"Skin",
"head_id":"9",
"param":{
"14":"Alopecia \/ Hair Loss",
"20":"Angular Cheilitis",
}
},
"Oral":{
"head":"Oral",
"head_id":"10",
我有一个诊断、检查等的选择下拉菜单。假设我选择了检查,那么应该提取检查对象,并附加其所有的 head 和 head_id。这是我尝试过的:
function change_category(objEleme){
var tab_value = $('#head_section_'+objEleme).val(); // value from 1st dropdown list eg : examination
$.each(result.tab_value, function(idx, data){
console.log(data.head + ' ' + data.head_id);
});return false;
预期输出:
<option value="8">General</option>
<option value="9">Skin</option>
<option value="10">Oral</option>
【问题讨论】:
-
使用括号符号
result[tab_value] -
感谢 Satpal 这工作。还有一个问题...如何访问 General 的参数数据(在功能上单击我获取 head 和 head id)并将其输出以供选择下拉列表?
-
我找到了第二个问题的答案。我在变量 head 中获得了选定的选项文本,然后执行了以下操作: $.each(result[tab_value][head]['param'], function(idx,data){ //do something });
标签: jquery json object multidimensional-array