HTML JS拦截表单错误提交

form 表单每次提交前都要验证内容有无填写还有填写的正确与否

这些 可以用Ajax提交代替 form表单提交,但是有些提交可能必须是 form 表单提交 根据已有经验,勿喷!)

更新 --   ajax实现文件上传    --  https://blog.youkuaiyun.com/Inuyasha1121/article/details/51915742

比如说    文件上传

enctype="multipart/form-data"  文件上传必须加

表单提交按钮那里   type="button"   οnclick="return CheckPost();"      再写一个检查的 js 方法

<form  id="addForm"  method="post" name="addForm" action="/addchip.do" enctype="multipart/form-data"  >
    <input type="hidden" name="exist" id="exist" value="0"/><%--默认没上传为0--%>
    <select id="brand" class="list-select">
              <option value="">请选择</option>
              <c:forEach items="${brandselect}" var="item">
              <option value="${item.brandName}">${item.brandName}</option> 
              </c:forEach>
     </select>
    
   <input type="file" name="uploadDriver" class="ipt"  id="uploadDriver" accept=".bin,.hex" contenteditable="true" style="display: none;" /> 
   <input type="text" id="textup1" class="text-upload" readonly/>
   <input type="button" id="btnup1" class="btn-upload" alt="" value="上传"/>
    
   <input class="bginput" type="button" name="dosubmit" id="chipbtn" value="确定"  onclick="return CheckPost();" >
#addForm  为表单的name属性

function CheckPost() {
var brandText = document.getElementById("brandText").value;
var uploadDriver = document.getElementById("uploadDriver").value;
if (uploadDriver != ""){
    document.getElementById("exist").value = 1;
  }
if (brandText == ""){
    alert("请填写品牌名!");
    addForm.brand.focus();
    return false;
  }
if (uploadData == ""){
    alert("请上传数据文件!");
    addForm.series.focus();
     return false;
}

addForm.submit();  //重点  没有返回false  就提交了
}
为了兼容火狐浏览器(火狐浏览器无法点击上传文件按钮)
   $('#btnup1').click(function(event) {
        $('#uploadDriver').click();
    });

    //capture selected filename
    $('#uploadDriver').change(function(click) {
        $('#textup1').val(this.value);
    });

按回车键提交
jQuery(document).bind('keyup', function(e) {
     if (event.keyCode == 13) {
         jQuery("#chipbtn").click();//点击登录
      }
    });
本来我用 required  
<input type="file" name="uploadDriver" accept=".bin,.hex" style="display: none;" required /> 
来检查提交前是否有上传文件  

 An invalid form control with name='uploadDriver' is not focusable

表单元素隐藏时, 无法用  required

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

huang_ftpjh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值