Struts-json小知识

在使用struts提供的json插件来完成ajax操作注意事项:

1.首先要导入相应版本的jar包

例如:struts2-json-plugin-2.3.24.jar

2.将struts.xml文件中的<packagename="" namespace=""extends="struts-default"/>修改为<packagename="" namespace="" extends="json-default"/>

3.将action的返回视图设置为<action name=""type="json"></action>

4.如果配置了以上两步,那么struts框架会自动将valuestack中的值压入到栈顶。

5.在进行相应代码的编写过程中,action的编写过程中,需要以下语句:ActionContext.getContext().getValueStack().set("list",list);

如果压入栈中的数据是一个list集合,那么它的格式如下:

$(function(){

$("#a").toggle(function(){

//想服务器发送请求获取商品

$.post("${pageContext.request.contextPath}/strutsjson",function(data){

var html = "<tableborder='1px'><tr><td>编号</td><td>名称</td><td>价格</td></tr>";

for(vari=0;i<data.length;i++){

html+="<tr><td>"+data[i].id+"</td><td>"+data[i].name+"</td><td>"+data[i].price+"</td></tr>";

}

html+= "</table>";

$("#d").html(html);

},"json");

},function(){

$("#id").html("");

})

})

没有设置root前返回的json结果形式如上,list:[{},{}],而这种形式在前端页面进行取值的时候会接受不到,出现以下情形

设置root后返回的json结果形式为[{},{}],具体代码如下:

<action name="" class=""method="">

<result name="success"type="json">

<param name="root">list</param>

</result>

</action>

经过以上设置后,现在就可以正常显示数据了

  快来和博主打成一片吧^_^

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值