解决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 相关文章推荐
ECMAScript 基础知识
Jun 29 Javascript
javascript取消文本选定的实现代码
Nov 14 Javascript
分别用marquee和div+js实现首尾相连循环滚动效果,仅3行代码
Sep 21 Javascript
html文档中的location对象属性理解及常见的用法
Aug 13 Javascript
Egret引擎开发指南之视觉编程
Sep 03 Javascript
AngularJS实现自定义指令及指令配置项的方法
Nov 20 Javascript
关于vue面试题汇总
Mar 20 Javascript
浅谈Redux中间件的实践
Jul 27 Javascript
Node.js的进程管理的深入理解
Jan 09 Javascript
vue学习笔记五:在vue项目里面使用引入公共方法详解
Apr 04 Javascript
ES6新增的数组知识实例小结
May 23 Javascript
react antd表格中渲染一张或多张图片的实例
Oct 28 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
PHILIPS L4X25T电路分析和打理
2021/03/02 无线电
PHPExcel简单读取excel文件示例
2016/05/26 PHP
php使用get_class_methods()函数获取分类的方法
2016/07/20 PHP
php使用PDO执行SQL语句的方法分析
2017/02/16 PHP
php设计模式之适配器模式原理、用法及注意事项详解
2019/09/24 PHP
PHP7创建COOKIE和销毁COOKIE的实例方法
2020/02/03 PHP
左右悬浮可分组的网站QQ在线客服代码(可谓经典)
2012/12/21 Javascript
JS获取URL中参数值(QueryString)的4种方法分享
2014/04/12 Javascript
Bootstrap每天必学之导航
2015/11/26 Javascript
AngularJS仿苹果滑屏删除控件
2016/01/18 Javascript
Vue.js仿微信聊天窗口展示组件功能
2017/08/11 Javascript
JavaScript实现的反序列化json字符串操作示例
2018/07/18 Javascript
基于mpvue小程序使用echarts画折线图的方法示例
2019/04/24 Javascript
微信小程序结合Storage实现搜索历史效果
2019/05/18 Javascript
详解Vue 如何监听Array的变化
2019/06/06 Javascript
swiper Scrollbar滚动条组件详解
2019/09/08 Javascript
javascript解析json格式的数据方法详解
2020/08/07 Javascript
[01:28:56]2014 DOTA2华西杯精英邀请赛 5 24 CIS VS DK
2014/05/26 DOTA
[24:42]VP vs TNC Supermajor小组赛B组 BO3 第三场 6.2
2018/06/03 DOTA
[39:21]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.24
2019/09/10 DOTA
Python入门_浅谈for循环、while循环
2017/05/16 Python
Python 使用PIL numpy 实现拼接图片的示例
2018/05/08 Python
python 对给定可迭代集合统计出现频率,并排序的方法
2018/10/18 Python
python代码如何实现余弦相似性计算
2020/02/09 Python
Python如何使用PIL Image制作GIF图片
2020/05/16 Python
Python 多进程原理及实现
2020/12/21 Python
全球知名巧克力品牌:Godiva
2016/07/22 全球购物
联想法国官方网站:Lenovo法国
2018/10/18 全球购物
美国在线健康和美容市场:Pharmapacks
2018/12/05 全球购物
构造方法和其他方法的区别?怎么调用父类的构造方法
2013/09/22 面试题
餐饮服务食品安全责任书
2014/07/25 职场文书
导师工作推荐信
2015/03/27 职场文书
资金申请报告范文
2015/05/14 职场文书
大国崛起日本观后感
2015/06/02 职场文书
高一军训口号
2015/12/25 职场文书
利用Python实现Picgo图床工具
2021/11/23 Python