qq_30648687
菜鸟本人
2018-06-07 02:42
采纳率: 33.3%
浏览 1.8k

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

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

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

7条回答 默认 最新

  • showbo

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

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

    点赞 评论
  • weixin_38652136
    邪恶八进制 2018-06-07 02:52

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

    点赞 评论
  • sx1216032
    sx1216032 2018-06-07 03:28

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

    点赞 评论
  • qq_30648687
    菜鸟本人 2018-06-07 03:39

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

    点赞 评论
  • zxciop205
    superbqaq 2018-06-07 04:27

    将它转成json

    点赞 评论
  • qq_36947556
    乐扣留 2018-06-07 05:33

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

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

    点赞 评论
  • qq_25580555
    喜欢猪猪 2018-06-07 07:30

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

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

    点赞 评论

相关推荐