一、设备主页面(deviceMain.jsp)  

  1. <t:dgToolBar title="编辑设备" icon="icon-edit" url="deviceController.do?goDeviceDetail" funname="editMyDevice"></t:dgToolBar>
  1. // 编辑管理的设备
  2. function editMyDevice(title,url,gname){
  3. var ids = "";
  4. var rows = $("#" + gname).datagrid('getSelections');
  5. if (rows.length == 1) {
  6. $.dialog.setting.zIndex = getzIndex(true);
  7. $.dialog.confirm('你确定编辑该数据吗?', function(r) {
  8. if (r) {
  9. $.dialog({
  10. content: 'url:'+url+"&ids="+rows[0].serial,
  11. lock : true,
  12. width:700,
  13. height:320,
  14. title:"编辑设备信息",
  15. opacity : 0.3,
  16. cache:false,
  17. cancelVal: '关闭',
  18. cancel: true, /*为true等价于function(){}*/
  19. button:[{
  20. name: '保存',
  21. callback: function(){
  22. iframe = this.iframe.contentWindow;//获取弹出层的iframe
  23. saveParam();//自定义保存数据方法
  24. $("#"+gname).datagrid("reload");
  25. $("#"+gname).datagrid('unselectAll');
  26. return true;//阻止页面关闭(默认为true不关闭)
  27. }
  28. }]
  29. });
  30. }
  31. });
  32. } else if (rows.length > 1) {
  33. tip("请选择一条数据进行编辑");
  34. } else {
  35. tip("请选择需要编辑的数据");
  36. }
  37. }
  38.  
  39. /**
  40. * 自定义保存数据方法
  41. * @param url
  42. * @param gridname
  43. */
  44. function saveParam() {
  45. $("#formobj", iframe.document).form('submit', {
  46. onSubmit : function() {
  47. },
  48. success : function(r) {
  49. msgdialog('操作成功!','success');
  50. },
  51. error : function(r) {
  52. msgdialog('操作异常!','error');
  53. }
  54. });//UsersForm为Form表单id,提交表单
  55. }
  56.  
  57. /**
  58. * 操作结果提示语
  59. * @param content:提示内容
  60. * @param type:图标类型
  61. */
  62. function msgdialog(content,type){
  63. $.dialog({
  64. content: content,
  65. title:'提示信息',
  66. icon: type+'.gif',
  67. titleIcon: 'lhgcore.gif',
  68. width:136,
  69. height:80,
  70. top: '98%',
  71. left:'98%',
  72. fixed: true
  73. });
  74. }

二、设备弹出框编辑页面(deviceEdit.jsp)  

  1. <body style="overflow-y: hidden" scroll="no">
  2. <t:formvalid formid="formobj" layout="table" dialog="true" action="deviceController.do?doUpdateDevice">
  3. <input id="serial" name="serial" type="hidden" value="${device.serial}">
  4. <input id="phone" name="phone" type="hidden" value="${device.phone }">
  5. <input id="smsflag" name="smsflag" type="hidden" value="${device.smsflag }">
  6. <table style="width: 600px;" cellpadding="0" cellspacing="1" class="formtable">
  7. <tr>
  8. <td align="right" width="25%" nowrap>
  9. <label class="Validform_label"> IP: </label>
  10. </td>
  11. <td class="value" width="85%">
  12. <input id="nodeip" name="nodeip" class="inputxt" type="text" datatype="s1-200" value="${device.nodeip}"/>
  13. <span class="Validform_checktip"></span>
  14. </td>
  15. </tr>
  16. <tr>
  17. <td align="right">
  18. <label class="Validform_label"> 主机名称: </label>
  19. </td>
  20. <td class="value">
  21. <input id="hostname" name="hostname" class="inputxt" type="text" value="${device.hostname}"/>
  22. </td>
  23. </tr>
  24. <tr>
  25. <td align="right">
  26. <label class="Validform_label"> 类型: </label>
  27. </td>
  28. <td class="value">
  29. <input id="type" name="type" class="inputxt" type="text" value="${device.type}"/>
  30. </td>
  31. </tr>
  32. </table>
  33. </t:formvalid>
  34. </body>

三、后台程序(DeviceController.java)

  1.    /**
  2. * 进入编辑页面
  3. * @param id
  4. * @param request
  5. * @return
  6. */
  7. @RequestMapping(params="goDeviceDetail")
  8. public String goDeviceDetail(String ids, HttpServletRequest request) {
  9. String sql = "select * from device where Serial = " + ids;
  10. Device device= deviceService.excuteQuery(sql);
  11. device.setNodeip(device.getNodeip().trim());
  12. device.setHostname(device.getHostname().trim());
  13. device.setPhone(device.getPhone().trim());
  14. device.setType(device.getType().trim());
  15. device.setSmsflag(device.getSmsflag().trim());
  16. request.setAttribute("device", device);
  17. return "device/deviceEdit";
  18. }
  1.    /**
  2. * 更新设备信息
  3. *
  4. * @return
  5. */
  6. @RequestMapping(params = "doUpdateDevice")
  7. @ResponseBody
  8. public AjaxJson doUpdateDevice(Device device, HttpServletRequest request) {
  9. String message = "更新设备成功";
  10. AjaxJson j = new AjaxJson();
  11.  
  12. String nodeip = device.getNodeip().trim();
  13. String hostname = device.getHostname().trim();
  14. String type = device.getType().trim();
  15.  
  16. String updateSybaseSql = "update device set NodeIP='" + nodeip + "', hostname='"+hostname+"', type='"+type+"' where Serial=" + device.getSerial();
  17. int result = this.deviceService.excuteUpdate(updateSybaseSql);
  18. if(result != -1){
  19. this.systemService.saveOrUpdate(device);
  20. try {
  21. DataSyncQueue.syncPhoneZrQueue.put("phone_zr"); //更新设备信息成功后,同步数据
  22. } catch (InterruptedException e) {
  23. e.printStackTrace();
  24. }
  25. }
  26. j.setMsg(message);
  27. return j;
  28. }

JEECG弹出框提交表单的更多相关文章

  1. vue iview modal弹出框 form表单验证

    一.ref="addApply" :model="addApply" :rules="ruleValidate"   不要忘记prop 二. ...

  2. jeecg 弹出框 点击按钮回调父页面 返回值

    jeecg 弹出框 点击按钮回调父页面 返回值 <t:base type="jquery"></t:base> <t:base type=" ...

  3. iframe中使用模态框提交表单后,iframe加载父页面的解决方法

    在iframe中使用模态框提交表单后,会出现iframe加载整个父页面的问题,如下图: 解决方法: 在form表单中添加target属性 _parent 这个属性会使目标文档载入父窗口或者包含来超链接 ...

  4. Layui 监听 复选框 提交表单

    表单数据这一块 layui 做的是真的不好,无论是在渲染还是在交互方面,每次都要自己来重新实现代码 #贴上代码 <!DOCTYPE html> <head> <meta ...

  5. EasyUI加zTree使用解析 easyui修改操作的表单回显方法 验证框提交表单前验证 datagrid的load方法

    带参提交一次查询,从服务器加载新数据.这是一个神奇的方法 $('#dg').datagrid('load',{ code: '01', name: 'name01' }); easyui修改操作的回显 ...

  6. ios手机弹出层上表单的操作,收起键盘焦点错乱的问题

    今天遇到了ios手机下 弹出层上form表单 当收起键盘后,焦点错乱,无法再操作的问题 解决办法 function device() { const u = navigator.userAgent; ...

  7. easyUI使用dailog实现弹出框带表单功能

    本文为博主原创,未经允许不得转载: 示例如下: 需要注意的地方在id为win的div中需要有:closed="true"这个属性,这个属性为控制dailogn对话框显示与隐藏的属性 ...

  8. 由于想要实现下载的文件可以进行选择,而不是通过<a>标签写死下载文件的参数,所以一直想要使用JFinal结合ajax实现文件下载,但是ajax实现的文件下载并不能触发浏览器的下载文件弹出框,这里通过模拟表单提交实现同样的效果。

    由于想要实现下载的文件可以进行选择,而不是通过<a>标签写死下载文件的参数,所以一直想要使用JFinal结合ajax实现文件下载(这样的话ajax可以传递不同的参数),但是ajax实现的文 ...

  9. Bootstrap使用模态框modal实现表单提交弹出框

    Bootstrap 模态框(Modal)插件 模态框(Modal)是覆盖在父窗体上的子窗体.通常,目的是显示来自一个单独的源的内容,可以在不离开父窗体的情况下有一些互动.子窗体可提供信息.交互等.如果 ...

随机推荐

  1. redis 安装以及配置

    centos 安装 yum install redis-server 配置 配置文件redis.conf 配置访问密码 # requirepass foobared requirepass 指定密码1 ...

  2. 批量启动关闭MS SQL 2005服务BAT

    当装上了MSSQL2005后,内存的占用会变得很大.所以如果用一个批量处理来开启或关闭MSSQL2005所有的服务,那将会让我们的电脑更好使用.根据自己的经验,做出了下面两个批处理: 1.开启服务:( ...

  3. 2.restEasy中@PathParam和@QueryParam的区别

    例如代码: @GET @Path("/{id}") @Produces(MediaType.APPLICATION_JSON) public T query(@PathParam( ...

  4. word中去除所有table键

    1.打开word---文件---选项---显示,不勾选制表符 2.选择需要的文本,按[CTRL+H]查找替换, 3.将鼠标定位至“查找内容”,点击“特殊格式-制表符”,然后出现^t,在“替换为”中输入 ...

  5. 题解【AcWing274】移动服务

    题面 非常好的优化 \(\text{DP}\) 状态表示的题目. 首先可以设 \(dp_{i,x,y,z}\) 表示已经做完了前 \(i\) 个请求,现在的 \(3\) 名服务员分别在 \(x\) . ...

  6. TODO:如何模拟cpu打满,磁盘打满,网卡打满

    背景: 测试活动中,需要构造cpu打满.磁盘打满.网卡打满的场景 场景1:cpu打满 环境信息: 虚拟机,物理核数16个,每个物理核的虚拟核数1个,虚拟核数16个: [root@vm10-0-0-8 ...

  7. c#中的yield词法

    yield关键字的作用是将当前集合中的元素立即返回,实例: 通过断点可以看到,控制台每显示一个集合中的元素,都会到query方法中去取集合元素. 其实yield return是“语法糖”,其本质是生成 ...

  8. C++——简单程序设计

    1.一个简单的程序 #include <iostream> //iostream是头文件,用来说明要使用的对象的相关信息. using namespace std; //使用命名空间,解决 ...

  9. codeforces 1282C. Petya and Exam (贪心)

    链接:https://codeforces.com/contest/1282/problem/C 题意:  有一个人参加考试,考试只有两种题,一种是简单题,每道题耗时固定为a:另一种是困难题,每道题耗 ...

  10. css公共

    @charset "utf-8"; /* CSS Document */ *{ padding:; margin:; } ul,li{ list-style: none; } a{ ...