js怎么获取从springmvc后台传过来的数据
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js怎么获取从springmvc后台传过来的数据相关的知识,希望对你有一定的参考价值。
参考技术A在springmvc中controller的结果集可通过json格式传到js前端接受,也可以通过Map传给前端,具体实现如下
1,通过json格式传递
controller层实现如下
@RequestMapping("queryCityInfo")
@ResponseBody
public String queryCityInfo()throws Exception
String provinceId = getString("id");
@SuppressWarnings("rawtypes")
List cityList = personalService.queryCity(provinceId);
if(null != cityList && cityList.size() >0 )
String json = JSONUtils.toJSONString(cityList);
super.outStr(json);
return null;
protected void outStr(String str)</span>
try
response.setCharacterEncoding("UTF-8");
response.getWriter().write(str);
catch (Exception e)
public static <T> String toJSONString(List<T> list)
JSONArray jsonArray = JSONArray.fromObject(list);
return jsonArray.toString();
js端接受如下
function selectBankCity(id)
$.ajax(
url:baseAddress+"queryCityInfo.do?provinceId="+id,
type:'get',
dataType:'json',
success:function(data)
$('#custBankArea').empty();
$('#custBankArea').append("<option >--请选择城市信息--</option>");
for(var i=0;i<data.length;i++)
$('#custBankArea').append("<option value='"+scjgcj.comdata[i].id+"'>"+data[i].cityName+"</option>");
);
2,通过Map传递
controller层实现如下
@RequestMapping("queryProvince")
@ResponseBody
public Map<String, Object> queryProvince(HttpServletRequest request,HttpServletResponse response)
Map<String, Object> map = new HashMap<String, Object>();
try
@SuppressWarnings("rawtypes")
List provinceList = personalService.queryProvince();
if(null != provinceList && provinceList.size() >0 )
map.put("province", provinceList);
catch (Exception e)
// TODO Auto-generated catch block
e.printStackTrace();
return map;
js端接受如下
$.ajax(
url:baseAddress+"queryProvince.do",
type:"get",
success:function(resData)
var data = resData.province;
for(var i=0;i<data.length;i++)
//js实现
//var objs = document.getElementById("cusBankCity")
//objs.options.add(new Option(data[i].provinceName) ,data[i].id);
//jq实现
$("#cusBankCity").append("<option value='"+data[i].id+"'>"+data[i].provinceName+"</option>");
);
Thymleaf js直接获取后台传过来的对象或者对象的属性
简单说明:第一次接触thymleaf模板,对于thymleaf在js中如何获取后台传递过来的值,真的挺简单的,记住就行了
代码:
后台代码:
//传递一个org对象给js
public String toEdit(ModelMap map, String orgId) {
try {
Org org = ohOrgManager.findById(orgId);
map.addAttribute("currentOrg", org);
} catch (Exception e) {
e.printStackTrace();
}
return VIEW_PATH + "/edit";
}
JS代码:
var org = [[${currentOrg}]];//获取对象
var orgId = [[${currentOrg.orgId}]];//获取属性id
var orgName = [[${currentOrg.orgName]];//获取属性名
以上是关于js怎么获取从springmvc后台传过来的数据的主要内容,如果未能解决你的问题,请参考以下文章