struts与常用的dataTables和jqueryGrid等表格进行ajax传值时,经常会传值不适配的问题,这是因为struts在进行ajax操作时已经对你要操作的json数据进行了处理,所以不需要再在action中转换为json字符串以jqueryGrid为例

  1.action中的代码如下:

  首先得到jqueryGrid需要的各个属性值,totals,pages,page,rows,这些属性我在前台进行的一些转换,所以代码中的属性名称与这些属性名有些差异,将得到的属性值放在一个action中定义的map集合中

setMap(this.getJsonMap(totalPages, getPage(), totalRecord, equipList));
public Map<String, Object> getJsonMap(int totalpages, int currentpage, int totalrecords, List data){Map<String, Object> map = new HashMap<String, Object>();map.put("totalpages", totalpages);map.put("currentpage", currentpage);map.put("totalrecords", totalrecords);map.put("data", data);return map;}

  2.struts配置文件中的代码

  其中的root为action返回结果中传到前台的变量,这里strus已经帮我们转换了,所以无需再自己写转换为字符串的代码,如何不写root,则会将action中所有的变量都转换为json对象

<action name="equipInfo" class="com.audiovisualcenter.action.EquipManagerAction" method="equipManager"><result name="success" type="json"><param name="root">map</param></result></action>

  3.前台的表格一般都需要json对象,所以可以直接适配

  下面是我的前台js代码,为了方便,只粘贴了部分代码

$("#grid-table").jqGrid({jsonReader : {  root:"data",page: "currentpage",total: "totalpages",records: "totalrecords",repeatitems: false,}, url:"equipInfo",datatype: "json",mtype:"post",height: 400,colNames:['操作','序号','名称','编号', '总数','类型','状况'],colModel:[{name:'myac',index:'', width:80, fixed:true, sortable:false, resize:false},{name:'id',index:'id', width:60, sortable:false,editable: false},{name:'name',index:'name',width:90, editable:true, sorttype:"date",/*unformat: pickDate*/},{name:'no',index:'no', width:90,editable: true,editoptions:{size:"20",maxlength:"30"}},viewrecords : true,recordtext:"显示第 {0} 至 {1} 项结果,共{2}条结果",emptyrecords:"未查询到任何记录",rowNum:10,rowList:[10,20,30],pager : "#grid-pager",pgtext:"{0}",altRows: true,autowidth: true,//shrinkToFit:false,//加载完成后的修改loadComplete : function() {var table = this;},});

转载于:https://www.cnblogs.com/overfly/p/8085130.html

struts2与常用表格ajax操作的json传值问题相关推荐

  1. php json传值ajax,ajax 与PHP json 传值

    利用JS get 方式传值时用 encodeURIComponent 进行转码,在PHP端 直接利用正常的转码 iconv进行转码 另外jquery 的 ajax 传值后是 UTF-8的编码,在PHP ...

  2. Struts2.0第三章(文件上传、ajax开发、json、Fastjson、Jackson、注解开发)

    Struts2.0文件上传: 浏览器端注意事项: 1.表单提交方式method = post: 2.表单中必须有一个<input type="file" name = &qu ...

  3. MyEclipse下Struts2配置使用和Ajax、JSON的配合

    原创文章,转载请注明:MyEclipse下Struts2配置使用和Ajax.JSON的配合  By Lucio.Yang 新手,初学Struts2的配置,同时尝试与Ajax通过JSON交互.首先介绍M ...

  4. JS实现动态生成表格并提交表格数据向后端 表格中数据转为json

    原文地址 需求:在web页面上动态的生成表格,并可以对表格中的数据进行编辑,然后把表格中的数据提交至后端服务器保存. 首先动态生成表格. 1.首先我们需要导入JS库文件.jQuery 2.然后在页面d ...

  5. ajax id sort,ajax返回的json内容进行排序使用sort()方法实现

    ajax返回的json内容进行排序使用sort()方法实现 关键方法:sort()用于对数组的元素进行排序. return a.num-b.num是升序: return b.num-a.num;是降序 ...

  6. laravel基础课程---11、lavarel的ajax操作(ajax优劣势是什么)

    laravel基础课程---11.lavarel的ajax操作(ajax优劣势是什么) 一.总结 一句话总结: 优势:用户友好度:异步通信,不会频繁刷新页面,用户友好度比较高 优势:减轻数据库压力 缺 ...

  7. ajax json 封装,Ajax--json(Ajax调用返回json封装代码、格式及注意事项)

    Ajax调用json封装代码: //Ajax调用返回JSON public function JsonQuery($sql,$type=1,$db="mydb") { //定义数据 ...

  8. Struts2 整合jQuery实现Ajax功能

    为什么80%的码农都做不了架构师?>>>    Struts2 整合jQuery实现Ajax功能 技术领域很多东西流行,自然有流行的道理,这几天用了jQuery,深感有些人真是聪明绝 ...

  9. 华为GAUSS数据库常用的单行操作函数介绍

    在这篇博客里面,主要是介绍华为高斯数据库,繁多的数据类型里面,常用的函数操作的方法,然后给大家写了每个函数的用法举例,欢迎留言补充. 字符串函数 trim() :去除字符串左右两边的指定字符,默认是去 ...

  10. jquery ajax json文件,jQuery ajax读取本地json文件

    jQuery ajax读取本地json文件 json文件 { "first":[ {"name":"张三","sex": ...

最新文章

  1. Python脑电数据的Epoching处理
  2. ZQCNN快速人脸检测
  3. php 分页参数丢失,THINKPHP3.2搜索分页丢失参数,实现保留搜索条件解决办法
  4. FPGA 起脚nCEO/IO管教设置问题
  5. java idea 模块_使用IntelliJ IDEA搭建多maven模块JAVA项目
  6. 第 3 章 镜像 - 015 - 调试 Dockerfile
  7. Helgrind:螺纹错误检测器
  8. 用python程序化交易名单_python程序化交易神器——tushare
  9. 吴恩达机器学习笔记3——线性代数
  10. wcf服务契约代理链
  11. OpenCV精进之路(十九):工具——程序打包发布
  12. 【基础教程】基于matlab生成Word+PPT报告【含Matlab源码 971期】
  13. java数组里的索引越界问题、空指针异常问题
  14. 如何使用Flutter开发web应用
  15. 使用TortoiseGit处理冲突亲测
  16. excel熵值法计算权重_SPSSAU一众新功能上线:高级公式、综合得分一键计算!
  17. C#获取汉子对应的拼音(首字母大写或小写,全拼音含首个字母大写)
  18. NewLife使用心得
  19. rdkitsmarts | 化学反应模板特殊官能团SMARTS整理
  20. 3.6 DNS服务器搭建

热门文章

  1. 刨根究底字符编码之一——关键术语解释(上)
  2. photoshop更改图片DPI方法
  3. 上海电力学院计算机专业在校区,上海电力学院有几个校区及校区地址 哪
  4. Mac下驱动BCM20702A0 USB蓝牙
  5. Deep Multi-View Spatial-Temporal Network for Taxi Demand Prediction
  6. Debian11 安装Chromium浏览器
  7. Windows进行磁盘碎片化整理
  8. 计算机桌面有阴影,电脑桌面图标有阴影怎么去掉
  9. 《墨菲定律》读书笔记(上)
  10. matlab计算器设计流程图_matlab计算器设计