解决JS表单验证只有第一个IF起作用的问题


Posted in Javascript onDecember 04, 2018

文章来自:https://blog.csdn.net/qq_38215042/article/details/84675988

具体代码如下所述:

if(条件语句){
 return false;
}else{
 return true;
}
if(条件语句){
 return false;
}else{
 return true;
}
if(条件语句){
 return false;
}else{
 return true;
}

你写的是不是上面这种情况?其实会出现只执行了第一个这种情况,主要是你在if else语句中都加入了,return 用来返回结果,这种方式其实是没有错的,逻辑也很通顺,不过你仔细想一想,你提交的时候如果返回的是true的话,那么你的form表单就相当于收到了一个可以提交的命令,那么他就会进行表单提交,后面的if else语句就不会执行了。

解决的方法:我用的是一种标记,先全部给他们true,如果后面的if语句条件判断为false,就弹出一个弹框进行提示,直到全部都符合条件了,才会给form表单返回一个true.进行表单提交。

有好的方法欢迎评论呦~~~~~~~~~

1:js代码

需要引入jquery

<script type="text/javascript">
  function checkForm() {
  var productName = true; 
  var chanDi = true;
  var muChanLiang = true;
  var zongChanLiang = true;
  var xiangQiang = true;
  var yuShouJia = true;
  var phone = true;
  var pattern = /^1[34578]\d{9}$/; //验证手机号正则表达式 
  if ($("#userName") == "") {
   alert("请输入产品名称!");
   /* alert($("#gsp_add_img_23").val()); */
   productName = false;
  } else if ($("#candi").val() == "") {
   alert("请输入产地!");
   chanDi = false;
  } else if ($("#muchan").val() == "") {
   alert("请输入亩产量!");
   muChanLiang = false;
  }else if ($("#zongChan").val() == "") {
   alert("请输入总产量!");
   zongChanLiang = false;
  } else if ($("#xiangqing").val() == "") {
   alert("请输入产品详情!");
   xiangQiang = false;
  } else if ($("#yushoujia").val() == "") {
   alert("请输入预售价!");
   yuShouJia = false;
  } else if (!pattern.test($("#userPhone").val())) {
   alert("手机号格式错误");
   phone = false;
  }
  if (productName == true && chanDi == true && muChanLiang == true && 
   zongChanLiang == true && xiangQiang == true && yuShouJia == true && phone == true) {
   $("#ListForm").submit();
  }
  } 
 </script>

2:form表单

<form action="$!webPath/new/fl_npsh.htm" method="post" name="ListForm"
  id="ListForm" enctype="multipart/form-data" >
  <!-- 类似首页楼层模块 -->
  <div style="width: 1020px; margin: 0 auto;">
  <div class="floor floor_purple"
   style="width: 1011px; border-top: 1px solid #eee;">
   <div class="liebiao"
   <!-- 给后台传一个id -->
   <input name="id" type="hidden" id="id" value="$!obj.id" />
   </div>
   <div class="liebiao">
   <!-- <span class="liebiao_left" style="color:red">*</span> -->
   <span class="liebiao_left">产品名称:</span> <input id="userName"
    type="text" name="product_name" class="shuruk"
    placeholder="例:灵宝SOD苹果(*必填项 *)" />
   </div>
   <div class="liebiao">
   <span class="liebiao_left">产品产地:</span> <input type="text"
    value="" name="product_origin" class="shuruk" id="candi"
    placeholder="例:灵宝寺河山(*必填项 *)" />
   </div>
   <div class="liebiao">
   <span class="liebiao_left">产品亩产量:</span> <input type="text"
    value="" name="mu_yield" class="shuruk" id="muchan"
    placeholder="例:每亩产量(*必填项 *)" />
   </div>
   <div class="liebiao">
   <span class="liebiao_left">产品总产量:</span> <input type="text"
    value="" name="sum_yield" class="shuruk"
    placeholder="例:总产量(*必填项 *)" id = 'zongChan'/>
   </div>
   <div class="liebiao" style="height: 60px;">
   <span class="liebiao_left"
    style="display: inline-block; height: 60px; line-height: 30px; float: left;">产品详情:</span>
   <textarea type="text" value="" id="xiangqing"
    name="product_details" class="shuruk02"
    placeholder="例:产品种植标准、产品优点、产品性能、储存注意事项等(*必填项 *)"></textarea>
   </div>
   <div class="liebiao">
   <span class="liebiao_left">产品预售参考价:</span> <input type="text"
    value="" id="yushoujia" name="advance_price" class="shuruk"
    placeholder="例:以每500g为单位(*必填项 *)" />
   </div>
   <div class="liebiao">
   <span class="liebiao_left">站主联系方式:</span> <input id="userPhone"
    value="" name="phone" class="shuruk" 
    placeholder="(*必填项 *)" />
   </div>
   <div class="liebiao" style="margin-top: 30px;">
   <input type="button" value="立即申请" class="tijiao" onclick="checkForm()">
   </div>
  </div>
  </div>
 </form>

总结

以上所述是小编给大家介绍的解决JS表单验证只有第一个IF起作用的问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jQuery 图像裁剪插件Jcrop的简单使用
May 22 Javascript
基于jquery实现的表格分页实现代码
Jun 21 Javascript
extjs 时间范围选择自动判断的实现代码
Jun 24 Javascript
JavaScript获取页面上被选中文字的方法技巧
Mar 13 Javascript
JS实现无限级网页折叠菜单(类似树形菜单)效果代码
Sep 17 Javascript
JQuery之proxy实现绑定代理方法
Aug 01 Javascript
Angular.JS判断复选框checkbox是否选中并实时显示
Nov 30 Javascript
JavaScript原生节点操作小结
Jan 17 Javascript
JS中双击和单击事件冲突的解决方法
Apr 09 Javascript
webstrom Debug 调试vue项目的方法步骤
Jul 17 Javascript
聊聊Vue 中 title 的动态修改问题
Jun 11 Javascript
Javascript如何递归遍历本地文件夹
Aug 06 Javascript
详解基于Vue,Nginx的前后端不分离部署教程
Dec 04 #Javascript
浅析Vue.js中v-bind v-model的使用和区别
Dec 04 #Javascript
在vue项目中优雅的使用SVG的方法实例详解
Dec 03 #Javascript
React事件处理的机制及原理
Dec 03 #Javascript
JointJS流程图的绘制方法
Dec 03 #Javascript
微信小程序之事件交互操作实例分析
Dec 03 #Javascript
vue-better-scroll 的使用实例代码详解
Dec 03 #Javascript
You might like
一步一步学习PHP(3) php 函数
2010/02/15 PHP
PHP 登录记住密码实现思路
2013/05/07 PHP
关于file_get_contents返回为空或函数不可用的解决方案
2013/06/24 PHP
php多用户读写文件冲突的解决办法
2013/11/06 PHP
PHP使用pcntl_fork实现多进程下载图片的方法
2014/12/16 PHP
PHP 实现类似js中alert() 提示框
2015/03/18 PHP
PHP实现的简单分页类及用法示例
2016/05/06 PHP
Laravel 5.4因特殊字段太长导致migrations报错的解决
2017/10/22 PHP
php设计模式之状态模式实例分析【星际争霸游戏案例】
2020/03/26 PHP
Js 获取HTML DOM节点元素的方法小结
2009/04/24 Javascript
关于jQuery UI 使用心得及技巧
2012/10/10 Javascript
AngularJS中处理多个promise的方式
2016/02/02 Javascript
jquery实现折叠菜单效果【推荐】
2017/03/08 Javascript
详解ECMAScript6入门--Class对象
2017/04/27 Javascript
JavaScript中双向数据绑定详解
2017/05/03 Javascript
微信小程序 开发MAP(地图)实例详解
2017/06/27 Javascript
结合mint-ui移动端下拉加载实践方法总结
2017/11/08 Javascript
layui获取多选框中的值方法
2018/08/15 Javascript
Angular(5.2-&gt;6.1)升级小结
2018/12/27 Javascript
简单了解JavaScript异步
2019/05/23 Javascript
js键盘事件实现人物的行走
2020/01/17 Javascript
Swiper实现导航栏滚动效果
2020/10/16 Javascript
Vue实现圆环进度条的示例
2021/02/06 Vue.js
[08:54]《一刀刀一天》之DOTA全时刻18:十九支奔赴西雅图队伍全部出炉
2014/06/04 DOTA
[03:46]显微镜下的DOTA2第七期——满血与残血
2014/06/20 DOTA
CentOS6.5设置Django开发环境
2016/10/13 Python
解决python写入mysql中datetime类型遇到的问题
2018/06/21 Python
python批量下载网站马拉松照片的完整步骤
2018/12/05 Python
使用python3批量下载rbsp数据的示例代码
2019/12/20 Python
python爬虫开发之selenium模块详细使用方法与实例全解
2020/03/09 Python
新版Pycharm中Matplotlib不会弹出独立的显示窗口的问题
2020/06/02 Python
美国体育用品在线:Modell’s Sporting Goods
2018/06/07 全球购物
搞笑车尾标语
2014/06/23 职场文书
写给纪委的违纪检讨书
2015/05/05 职场文书
2015年高中生国庆节演讲稿
2015/07/30 职场文书
SQL Server2019数据库备份与还原脚本,数据库可批量备份
2021/11/20 SQL Server