表单页面提交后,不跳转的处理方法

很多时候,我们希望表单页面提交后,不跳转到action设定的页面,而是保留在原来的页面,最简单的处理办法为,在当前页面添加<iframe></iframe>子窗口,设置表单的target属性指定为iframe name,代码如下:

<form action="FileUpload" enctype="multipart/form-data" method="post" target="myframe">
    上传文件一:<input id="file1" type="file" name="file1"/><br>
    上传文件二:<input id="file2" type="file" name="file2"/><br>
    <input class="button" type="submit" value="提交" />
    <input class="button" type="reset"  value="取消" />
</form>
<iframe src="" width="200" height="200" frameborder="0" name="myframe" style="display:NONE" ></iframe>

表单域校验提示提交成功,并重置当前页面

表单域检验的几种形式:
(1)当表单域的输入值发生改变时进行校验
(2)当表单域失去焦点时进行校验
(3)当提交表单时进行整体校验
当前页面脚本如下:

<script>
   //当前页面加载后,加载(注册)事件处理函数
   window.onload = function(){
      document.getElementById("myform").onsubmit = function(){
         return checkInputFile();
      }
      document.getElementById("myframe").onload = function(){
         alert("文件上传提交成功!");
         //重新加载当前页面
         location.reload();
      }
   }
   function checkInputFile(){
      var file1 = document.getElementById("file1").value;
      var file2 = document.getElementById("file2").value;
      if((file1+file2)==""){
         alert("请选择需要上传的文件!");
         return false;
      }
      return true;
   }
</script>

实现上传文件多选

通过给表单的输入元素input增加multiple属性,来实现文件多选,并通过设置accept属性增加对文件的过滤条件,如下代码:

<input id = "file1" type="file" name="定价请示函" multiple accept="image/jpg,image/jpeg,image/png"/>
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐