怎么处理ajax返回对象被包含问题?(返回对象被包含在result中)

图片说明
图片说明
我想返回结果直接就是result中的值,而不是被包了一层。请问有什么办法可以解决?
返回的结果是上面的图片,下面是api方法,调用success实际上就是封装了一个PageOut类,参数实例化返回。( 环境: ABP+Swagger+LayUI , .NET)
图片说明

和ws结果一样会有个d属性,ws不想有d属性可以用Response。Write直接输出json字符串。然后Response。End结束输出

你可以试试这种方法用Response输出序列化为json字符串后的内容

使用JSONArray.toJSONString(object) 直接返回就可以了

看你上面的代码好像是返回了一个列表,但你列表里其实只有一个值?如果是这种情况,你返回的时候直接取列表的第一个值返回就是了,如果必须返回一个列表,其实也没什么问题,只不过就不能直接data.result.name这么调用了,你可以采用each这种方式遍历(我都是用这种方式,后面两种方式应该是存在的,但是可能不是那么用的,以前查过资料,如果用后面两种方式,列表中的key值好像必须是long,一看就这么麻烦,所以建议直接遍历吧),也可以直接试试data.result[0].name或者data.result.get(0).name。

PersonListDto只是我使用工具生成的对应的DTO类名,上面说明通过id拿了,所以只有一列数据的

将它转成json

和ws结果一样会有个d属性,ws不想有d属性可以用Response。Write直接输出json字符串。然后Response。End结束输出

你可以试试这种方法用Response输出序列化为json字符串后的内容将它转成json 或者使用JSONArray.toJSONString(object) 直接返回就可以了
也可以试试data.result[0].name或者data.result.get(0).name。

首先把 结果值赋值给一个变量var result=data.result;然后if(rersult.data!=null) {//进行获取具体的数据 如:alert(rusult.data.name); }

else{alert("结果对象为null")}; 注意关键点:返回结果data下面包含一个对象result,而result下面包含一个对象data,这个data才是要处理的对象。