关于$.ajax()以及后台传过来的list或者json问题
  1. Controller里有一个集合返给js:
    List ywysales = tbMemberService.getSalesByRegionId(business.getTbRegionId(),rmanager.getTrmMemberId());//业务员的集合,显示业务员

  2. js中有个方法接受这个list:
    $.ajax({
    type:'POST',
    url:ctx + "/business/paper/business?tbid="+selection.tbId +"&code=" +selection.tbRecomandCod,
    dataType:'text',
    success:function(msg){
    $.each(msg,function(i,item){
    $("#area").html(item.tbProvName+"-"+item.tbCityName+"-"+item.b RegionName);
    $("#groupb").combobox({
    valueField: 'tmId',
    textField: 'tmName',
    });
    });
    $('#dlg-sale').window('open');
    }
    });

我想问的是:
后台返回的list集合必须要转换成json返回吗?
1).如果必须,则js里面的$.ajax()里面的datatype的值写什么,
如果必须,则js里面的$.ajax()里面的success:function(msg){}方法里面应该 如 何写 才能将值赋值给前端的combobox
2).不用转换成json,直接用list返回。
如果这样直接用list,则js里面的$.ajax()里面的datatype的值和success:functio n(msg){}方法里面应该 如 何写 才能将值赋值给前端的combobox

我的success:function(msg){}方法里面有两个$("#xx")的赋值 是因为前台的要显示的窗口上面有一个input的框 和 一个下拉框

求大神帮忙解决我所问的问题,谢谢了啊

5个回答

不一定,看你的用途,转换成json是为了好解析。datatype写json吧,js解析json就相当于数组一样,你可以把那个msg打印出来看看结构是是怎样的,一般来说msg点后面加key就能拿到对应的value了

qq_34502876
Cc-罗 改成Json遍历起来比较方便 建议写出json
4 年多之前 回复
donggua3694857
GrayHJX 回复baidu_34890787: datatype 写json 没问题的
4 年多之前 回复
donggua3694857
GrayHJX 回复baidu_34890787: 最方便的还是通过jsonarray转换,你可以先把转换出来的字符串打印出来System.out.println(jsonArray.toString()); datatype这个不是一定要写的吧。如果成功msg肯定会打印出来东西的
4 年多之前 回复
baidu_34890787
哈利露露 还有,我如果将datatype的值写成json,下面的alert(msg)打印不出来啊
4 年多之前 回复
baidu_34890787
哈利露露 如果转换成json,那后台的list需要通过JSONArray jsonArray =JSONArray.fromObject(list);这样转换成json?还是将其list拼接成json?
4 年多之前 回复

图片说明比如这个你ajax返回使用的构造方法 你的list就可以直接放在object msg这个上,前端获取这个msg它就又是一个list

应该用json哪,用text取不出来的。我前两天才做过。

一般json比较多点,,,

感觉不一定,数据类型根据你的需要定,不过一般都是json

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐