ajax如何取出后台传过来的json值,前台jquery+ajax+json传值,后台处理完后返回json字符串,如何取里面的属性值?(不用springmvc注解)...

一.取属性值

前台页面:

function select(id){

alert("hfdfhdfh"+id);

$.ajax({

url:"selectByid.jsp",

datatype:‘json‘,

data:{id:id}, // 发送数据

error:function(data){

alert("出错了,没有这个学生!!");

},

success:function(data){

alert(data);

var json = eval("("+data+")");//将json类型字符串转换为json对象

alert("hjf"+json.name);

$("#id").val(json.id),

$("#name").val(json.name),

$("#age").val(json.age);

if(json.sex==‘男‘){

$("input:radio[name=‘sex‘]").eq(0).attr("checked",true);

//$("input[name=sex]").attr("checked","checked");

// $("#sex").attr("checked",‘checked‘);

//$("#sex").removeAttr("checked");

}else{

$("input:radio[name=‘sex‘]").eq(1).attr("checked",true);

//$("input[name=sex]").attr("checked","checked");

//$("#sex").attr("checked",‘checked‘);

//$("#sex").removeAttr("checked");

}

}

后台代码:

int id = Integer.parseInt(request.getParameter("id"));

StudentDao dao = new StudentDao();

StudentBean bean = dao.selectByid(id);

if(bean!=null){

ObjectMapper x = new ObjectMapper();

String str = x.writeValueAsString(bean);    //将java类对象转换为json字符串

System.out.print(str);

response.getWriter().print(str);    //将数据返回前台ajax

}

%>

二.前端ajax接不到json值怎么回事?

前台页面:

function ajaxPost(){

$.ajax({

data:{"name":$("#name").val(),

"age":$("#age").val(),

"sex":$("input[name=‘sex‘]:checked").val()},

type:"Post",

async:false,                //加上这个属性就好了

dataType: ‘json‘,

url:"addStudent.jsp",

error:function(data){

alert(‘添加失败!‘);

},

success:function(data){

alert(‘添加成功!‘);

window.location.href = ‘list.jsp‘

}

});

}

后台代码:

String name = request.getParameter("name");

int age = Integer.parseInt(request.getParameter("age"));

String sex = request.getParameter("sex");

StudentBean student = new StudentBean();

student.setName(name);

student.setAge(age);

student.setSex(sex);

StudentDao dao = new StudentDao();

int rows = dao.addStudent(student);

if(rows>0){

response.getWriter().print("{}");

}

%>

三.后台查询数据库返回集合,前台显示在表格中。

前台页面:

$(document).ready(function(){

$("#list4").jqGrid({                //jqGrid 表格控件

url:"selectStudent.jsp",

datatype:"json",

mtype:"POST",

height:600,

postData:"{SearchSql:‘‘}",

autowidth:true,

colNames:[‘ID‘,‘姓名‘,‘年龄‘,‘性别‘],

colModel:[

{name:‘id‘,index:‘id‘,hidden:true},

{name:‘name‘,index:‘name‘},

{name:‘age‘,index:‘age‘},

{name:‘sex‘,index:‘sex‘},

],

rownumbers:true,

viewrecords: true,

jsonReader:{

id: "blackId",

repeatitems : false

},

pager:$(‘#gridPager‘)

});

});

后台代码:

StudentDao dao = new StudentDao();

List list = dao.selectAll();

if(list!=null){

ObjectMapper x = new ObjectMapper();

String str1 = x.writeValueAsString(list);      //集合转json类型字符串

response.getWriter().print(str1);    //返回前端ajax

}

%>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值