zoukankan      html  css  js  c++  java
  • 关于上传文件 非ajax提交 得到后台数据问题

    <form name="configForm" id="configForm" method="post" action="" >

      ..........

    </form>

    根据id获得表单数据然后发送ajax请求,获得后台返回数据,处理数据,完美。

    但是如果需要上传文件,

    <tr>
      <td class="fontSize">请选择文件:</td>
      <td><input type="" class="easyui-filebox" id="fileImport" name="file" value="" style="300px;"></td>
    </tr>

    这个文件数据后台得不到,表单数据这个file也是null,这时需要

    <form name="configForm" id="configForm" method="post" action=""  enctype="multipart/form-data" >

    添加的这个enctype="mutipart/form-data" 后台可以

    @RequestMapping("/saveAppVersion")
    @ResponseBody
    public ModelMap saveAppVersion(String action, TbdAppVersion tbdAppVersion,
          @RequestParam(value = "file") MultipartFile file) {....

    }

    接收。

    但是必须要表单提交请求数据,ajax仍然不行(具体原因可以百度。。)

    <form name="configForm" id="configForm" method="post" action="/admin/systemConfig/saveAppVersion.do" enctype="multipart/form-data">

    ......

    </form>

    easyui里面的js  submit提交

    handler : function() {
      $("#configForm").submit();
    }

    那么问题来了,提交过后如何获得后台返回数据呢?

    <form name="configForm" id="configForm" method="post" action="/admin/systemConfig/saveAppVersion.do"

          enctype="multipart/form-data" target="myIframe"> 。。。。。 </form>

    <iframe name="myIframe" id="if_json" style="display:none">
    </iframe>

    在表单里添加一个target,也就是说提交成功返回的数据写在了name为myIframe的这个iframe中,只刷新这个iframe,接下来就是获得这个数据了,

    虽然百度不是什么好鸟,但是有些东西还是可以找到的,比如以下获取iframe数据的方法!

    handler : function() {

      $("#configForm").submit();
      $("#if_json").load(function(){//获取iframe中的内容
      var body = $(window.frames['myIframe'].document.body);
      var data = eval('(' + body[0].textContent + ')');
        if(data.resultCode && data.resultCode != 0){
                    .........
        }else{

             .........

            }
      });

    }

  • 相关阅读:
    CentOS 6.x 系统安装选项说明
    MySQL表的操作
    6月13号
    6月11号
    6月10号
    6月9号
    6月6
    day27
    day 28
    day 29
  • 原文地址:https://www.cnblogs.com/teitey/p/5951734.html
Copyright © 2011-2022 走看看