layui多个不确定名称复选框判断是否全部选中

JS数组迭代方法:
every() => 给定函数遍历数组,如果每一项都返回true则为true
some() => 给定函数遍历数组,只要有一项返回true则返回true


<form class="question-form layui-form">   <div class="form-box"><!-- checks="question2"复选必填 value值为复选名称 -->     <div class="form-con">       <p class="form-con-tit"><span class="require-span">*</span> <span class="tit-txt">2.关于十一长假活动安排问卷调查问题2关于十一长假活动安排问卷调查问题2关于十一长假活动安排问卷调查问题2关于十一长假活动安排问卷调查问题2 <span class="tips-span">【最少选择1项】</span></span></p>       <div class="layui-form-item">         <div class="question-input"><input title="写作" type="checkbox" name="question_0" /></div>         <div class="question-input"><input title="阅读" type="checkbox" name="question2_1" /></div>         <div class="question-input"><input title="游戏" type="checkbox" name="question2_2" /></div>       </div>     </div>     <div class="form-con">       <p class="form-con-tit"><span class="require-span">*</span> <span class="tit-txt">4.关于十一长假活动安排问卷调查问题4关于十一长假活动安排问卷调查问题4关于十一长假活动安排问卷调查问题4关于十一长假活动安排问卷调查问题4 <span class="tips-span">【最少选择1项】</span></span></p>       <div class="layui-form-item">         <div class="question-input"><input title="写作" type="checkbox" name="question4_0" /></div>         <div class="question-input"><input title="阅读" type="checkbox" name="question4_1" /></div>         <div class="question-input"><input title="游戏" type="checkbox" name="question4_2" /></div>       </div>     </div>     <div class="form-con">       <p class="form-con-tit"><span class="require-span">*</span> <span class="tit-txt">3.关于十一长假活动安排问卷调查问题3关于十一长假活动安排问卷调查问题3关于十一长假活动安排问卷调查问题3</span></p>     <div class="layui-form-item"> </div>   </div> </div> <a class="layui-btn" href="javascript:;">提交</a></form> <script type="text/javascript"> layui.use(['form', 'layer'], function() {
  var form = layui.form, layer = layui.layer;   form.on('submit(question)', function(data){ if(checkChecks(JSON.stringify(data.field))) {   // 复选已选择   layer.msg('复选已选择') } else {   // 有复选未选   layer.msg('有复选未选') } // layer.msg(JSON.stringify(data.field)); return false;   }); }) function checkChecks(field) {   field = JSON.parse(field);   var checksLen = $('[checks]').length,   funcReturn = true;   if(checksLen) {     $('[checks]').each(function(i) {       let checksName = $(this).attr('checks');       let checksKid = $(this).find('[type=checkbox]').length;       let checksArr = [];       for(let j = 0; j < checksKid; j ++) {         if(field[checksName + '_' + j]){           checksArr.push(field[checksName + '_' + j]);         }       }       if(!checksArr.length) {         funcReturn = false       }     })   } else {     funcReturn = true   }   return funcReturn } </script>

  

posted on 2021-04-09 17:25  衔玉凌枝  阅读(423)  评论(0)    收藏  举报