Django返回的AJAX响应无法在控制台打印指定字段如何解决
问题解决方法
错误原因
- 你拿到的接口响应是数组结构,最外层用
[]包裹,实际业务数据存放在数组的第一个元素中,直接访问response.PUITS属于访问数组不存在的属性,自然会报错 - 你已经在AJAX配置里指定了
dataType: "json",jQuery会自动将返回的JSON字符串转为JS对象,后续额外执行JSON.stringify再JSON.parse属于冗余操作,可直接删除
修正后的代码
单条数据场景(接口只返回1条记录)
$.ajax({ type: 'GET' , url: url, data: {'PUITS': PUITSId }, dataType: "json", success: function (response){ // 先判断数组非空再取值,避免索引报错 if(response && response.length > 0){ const fields = response[0].fields; // 打印所需字段 console.log(fields.PUITS); console.log(fields.DUSE); console.log(fields.CS); console.log(fields.DATE_TEST); console.log(fields.post_date); } } })
多条数据场景(接口可能返回多条记录)
success: function (response){ response.forEach(item => { const fields = item.fields; console.log('PUITS:', fields.PUITS); console.log('DATE_TEST:', fields.DATE_TEST); // 其他字段按需打印 }) }
内容的提问来源于stack exchange,提问作者tibas
相关产品推荐
相关产品推荐

