关于$.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的框 和 一个下拉框

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

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

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

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

一般json比较多点,,,

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