我在检索响应的参数时遇到了问题。有人可以帮忙吗?:(
控制台上的此错误:
katalog_laporan:1837 未捕获的类型错误:无法读取属性"MENU" 未定义 在对象。(katalog_laporan:1837( at Function.each (jquery-3.2.1.slim.js:359( at Object.success (katalog_laporan:1830( at j (jquery-3.2.1.slim.js:3152( at Object.fireWith [as resolveWith] (jquery-3.2.1.slim.js:3212( at x (jquery-3.2.1.slim.js:8159( at XMLHttpRequest.(jquery-3.2.1.slim.js:8159(
这个文件js me :
for(x = 0; x <= panjangindex; x++){
var fullmenu = response.detail[x].MENU;
var itemmenu = fullmenu.split('>');
var jumlahitem = itemmenu.length;
el.append('<li>');
for(i = 0; i < jumlahitem; i++){
var item = itemmenu[i];
el.append('<span style="font-size:12px" class="label label-info arrowed-right arrowed-in">'+itemmenu[i]+'</span>');
}
el.append('</li><br><br>');
}
请这样尝试 --
response.detail[x]['MENU']
而不是--
response.detail[x].MENU
如果仍然不起作用,请通过以下链接共享响应变量格式。
https://gist.github.com
谢谢
为避免显示此错误,您应该检查对象或数组的可用性,使其类似于
for(x = 0; x <= panjangindex; x++){
var fullmenu = response.detail[x].MENU ? response.detail[x].MENU : null;
if(fullmenu) {
var itemmenu = fullmenu.split('>');
var jumlahitem = itemmenu.length;
el.append('<li>');
for(i = 0; i < jumlahitem; i++){
var item = itemmenu[i];
el.append('<span style="font-size:12px" class="label label-info arrowed-right arrowed-in">'+itemmenu[i]+'</span>');
}
el.append('</li><br><br>');
}
}
并且您必须通过控制台检查您的 api 调用是否已经包含此元素.log(response.details[x](;