解决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 相关文章推荐
CLASS_CONFUSION JS混淆 全源码
Dec 12 Javascript
javascript FormatNumber函数实现方法
Dec 30 Javascript
jQuery UI-Draggable 参数集合
Jan 10 Javascript
JS继承 笔记
Jul 13 Javascript
JS组件Bootstrap实现弹出框和提示框效果代码
Dec 08 Javascript
el表达式 写入bootstrap表格数据页面的实例代码
Jan 11 Javascript
关于在vue-cli中使用微信自动登录和分享的实例
Jun 22 Javascript
layer.alert自定义关闭回调事件的方法
Sep 27 Javascript
Echarts地图添加引导线效果(labelLine)
Sep 30 Javascript
JavaScript实现拖拽和缩放效果
Aug 24 Javascript
JS中队列和双端队列实现及应用详解
Sep 29 Javascript
前端如何实现动画过渡效果
Feb 05 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连接与操作PostgreSQL数据库的方法
2014/12/25 PHP
PHP+HTML+JavaScript+Css实现简单爬虫开发
2016/03/28 PHP
thinkPHP显示不出验证码的原因与解决方法分析
2017/05/20 PHP
PHP截取发动短信内容的方法
2017/07/04 PHP
laravel实现按时间日期进行分组统计方法示例
2019/03/23 PHP
php5对象复制、clone、浅复制与深复制实例详解
2019/08/14 PHP
List Installed Software Features
2007/06/11 Javascript
测试JavaScript字符串处理性能的代码
2009/12/07 Javascript
javascript Array.prototype.slice的使用示例
2013/11/14 Javascript
设置jsf的选择框h:selectOneMenu为不可编辑状态的方法
2014/01/07 Javascript
JavaScript的jQuery库插件的简要开发指南
2015/08/12 Javascript
jQuery实现的tab标签切换效果示例
2016/09/05 Javascript
angular使用post、get向后台传参的问题实例
2017/05/27 Javascript
关于Vue背景图打包之后访问路径错误问题的解决
2017/11/03 Javascript
详解JS取出两个数组中的不同或相同元素
2019/03/20 Javascript
微信小程序自定义组件实现环形进度条
2020/11/17 Javascript
浅谈vue 锚点指令v-anchor的使用
2019/11/13 Javascript
原生js实现文件上传、下载、封装等实例方法
2020/01/05 Javascript
[10:04]国际邀请赛采访专栏:DK.Farseer,mouz.Black^,采访员Josh专访
2013/08/05 DOTA
Python numpy实现二维数组和一维数组拼接的方法
2018/06/05 Python
10行Python代码计算汽车数量的实现方法
2019/10/23 Python
Python使用type动态创建类操作示例
2020/02/29 Python
python在地图上画比例的实例详解
2020/11/13 Python
详解CSS3中border-image的使用
2015/07/18 HTML / CSS
Clearly澳大利亚:购买眼镜、太阳镜和隐形眼镜
2018/04/26 全球购物
DataList 能否分页,请问如何实现?
2015/05/03 面试题
动态密码技术
2012/10/18 面试题
两道JAVA笔试题
2016/09/14 面试题
大学生求职简历的自我评价
2013/10/21 职场文书
关爱残疾人演讲稿
2014/05/24 职场文书
2014年志愿者工作总结
2014/11/20 职场文书
2014年效能监察工作总结
2014/11/21 职场文书
2015年幼儿园班务工作总结
2015/05/12 职场文书
《山中访友》教学反思
2016/02/24 职场文书
只需要12页,掌握撰写一流商业计划书的技巧
2019/05/07 职场文书
详解MySql中InnoDB存储引擎中的各种锁
2022/02/12 MySQL