您的位置:首页 > Web前端 > JavaScript

后台将对象转换为json格式,前台js解析json数据,将字符串转化为数组

2014-03-21 15:28 1301 查看
后台Action

public void selectReadersById1(){

HttpServletRequest request=ServletActionContext.getRequest();

HttpServletResponse response= ServletActionContext.getResponse();

String id=request.getParameter("readerId"); //接收jsp页面传的参数读者id

Readers readers=readersBiz.selectReaderById(Integer.parseInt(id));

if (readers!=null) {

//标红部分为精华,将对象转换为json格式

JSONArray jsonarray = JSONArray.fromObject(readers);

response.setContentType("text/html;charset=UTF-8");

try

{

response.getWriter().print(jsonarray);

System.out.println(jsonarray);

}

catch (IOException e)

{

e.printStackTrace();

}

}

}

前台页面.jsp

$("#readerId").blur(function(){

var readerId=$("#readerId").val();

$.ajax({

type:"post",

url:"<%=request.getContextPath()%>/selectReadersById1.action",

data:{"readerId":readerId}, //传参数读者id至后台

dataType:"text",

success:function(data)

{

alert(data); //打印结果可以看出data是一个json格式的字符串

//标红部分为精华部分,将json格式的字符串转化为数组

var myobj=eval(data);

for(var i=0;i<myobj.length;i++){

$("#readerName").val(myobj[i].name);

// alert(myobj[i].age);

}

}

})

})

注:eval() 将服务器端构建好的JSON数据转化为可用的JavaScript对象,在转化的时候需要将JSON字符串的外面包装一层圆括号

如:var jsonObject = eval("(" + jsonFormat + ")");
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐