繁体   English   中英

从响应API获取参数

[英]get parameter from response API

检索响应参数时出现问题。 有人可以帮忙吗? :(

控制台上的此错误:

katalog_laporan:1837未捕获的TypeError:无法读取对象上未定义的属性“ MENU”。 (katalog_laporan:1837)在Function.each(jquery-3.2.1.slim.js:359)在Object.success(katalog_laporan:1830)在Object.fireWith的j(jquery-3.2.1.slim.js:3152) XMLHttpRequest处的x(jquery-3.2.1.slim.js:8159)的[as resolveWith](jquery-3.2.1.slim.js:3212)。 (jquery的-3.2.1.slim.js:8159)

这个文件js我:

                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>');   
                }

为了避免显示此错误,您应该检查对象或数组的可用性,以便

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>');
}
}

并且您必须通过console.log(response.details [x]);检查您的api调用是否已经包含此元素。

请尝试这样-

response.detail[x]['MENU']

代替 -

response.detail[x].MENU

如果仍然无法使用,请通过以下链接共享响应变量格式。

https://gist.github.com

谢谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM