[WEB前端开发]-VM中的POST请求-解决页面向control层传参的问题
2015-09-09 14:26
567 查看
页面上如何向后台传递参数?
在spreing-MVC与velocity技术中,可以通过属性值映射的方式,直接通过json格式传递参数到后台。场景
在工作中,我遇到一个问题,在表格中点击一行数据,需要将这行数据中的某个值传递到control层。因为表格是在js文件中进行处理,无法直接映射到control中。为此,我同事给我一个解决方案如下:Control层代码
@RequestMapping(value= "/edit") public String edit(Model model,@RequestParam ("shopId" )String shopId) throws Exception{ LogUtil. info(MODULE, "======== 编辑店铺 开始 =======" ); //数据填充 ShopInfoResDTO dto = shopInfoRSVDubbo.findShopInfoByShopID(Long.parseLong( shopId)); model.addAttribute("dto" , dto ); model.addAttribute("shopId" , shopId ); LogUtil. info(MODULE, "======== 编辑店铺 结束 =======" ); return "/staff/shop/shop-edit" ; }
JS代码
在页面上通过点击编辑按钮,触发后台事件,后台通过获取到的shopId值做一些处理。$( '#btn_code_edit').click(function(){ var val = $('#dataGridTable' ).getSelectedData(); var shopId = val[0].id; $( '#shopId').val(shopId);// $( '#editFrom').submit(); });
VM页面代码
表单提交post请求后,将val[0].id的值,赋给( '#shopId' ),这个( ‘#shopId’ )是vm页面上的id = “shopId”这个值。<form id="editFrom" action= "${CONTEXT_PATH}/shop/edit" method="post"> <input type="hidden" name ="shopId" id = "shopId" value="" /> </form>
然后再Controller层通过,@RequestParam (“shopId” )String shopId)获取到shopID值。这个@RequestParam (“shopId” )映射的是中的name属性的值。
相关文章推荐
- html文件中jquery与velocity变量中的$冲突的解决方法
- velocity显示List与Map的方法详细解析
- JAVA velocity模板引擎使用实例
- Velocity基本语法介绍
- Spring MVC 集成 Velocity 配置
- Velocity入门例子
- Velocity读取后台数据
- 树形结构
- velocity 注释语法
- velocity include
- web前端开发工程师需要学习的技能
- Velocity浅析及与Jsp、Freemarker对比
- Velocity 官方实例学习二 (context_example)
- Velocity 官方实例学习一 (app_example1)
- 一些好用的Eclipse 3.0插件
- 一些好用的Eclipse 3.0插件
- DirectX粒子--雪花
- Struts2配置文件
- J2EE概述
- 如何将.net的开发的组件转移到java中的组件?