溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

解決JS表單驗(yàn)證只有第一個(gè)IF起作用的問題

發(fā)布時(shí)間:2020-09-05 09:42:25 來源:腳本之家 閱讀:120 作者:itfallrain 欄目:web開發(fā)

文章來自: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;
}

你寫的是不是上面這種情況?其實(shí)會(huì)出現(xiàn)只執(zhí)行了第一個(gè)這種情況,主要是你在if else語句中都加入了,return 用來返回結(jié)果,這種方式其實(shí)是沒有錯(cuò)的,邏輯也很通順,不過你仔細(xì)想一想,你提交的時(shí)候如果返回的是true的話,那么你的form表單就相當(dāng)于收到了一個(gè)可以提交的命令,那么他就會(huì)進(jìn)行表單提交,后面的if else語句就不會(huì)執(zhí)行了。

解決的方法:我用的是一種標(biāo)記,先全部給他們true,如果后面的if語句條件判斷為false,就彈出一個(gè)彈框進(jìn)行提示,直到全部都符合條件了,才會(huì)給form表單返回一個(gè)true.進(jìn)行表單提交。

有好的方法歡迎評(píng)論呦~~~~~~~~~

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}$/; //驗(yàn)證手機(jī)號(hào)正則表達(dá)式 
  if ($("#userName") == "") {
   alert("請(qǐng)輸入產(chǎn)品名稱!");
   /* alert($("#gsp_add_img_23").val()); */
   productName = false;
  } else if ($("#candi").val() == "") {
   alert("請(qǐng)輸入產(chǎn)地!");
   chanDi = false;
  } else if ($("#muchan").val() == "") {
   alert("請(qǐng)輸入畝產(chǎn)量!");
   muChanLiang = false;
  }else if ($("#zongChan").val() == "") {
   alert("請(qǐng)輸入總產(chǎn)量!");
   zongChanLiang = false;
  } else if ($("#xiangqing").val() == "") {
   alert("請(qǐng)輸入產(chǎn)品詳情!");
   xiangQiang = false;
  } else if ($("#yushoujia").val() == "") {
   alert("請(qǐng)輸入預(yù)售價(jià)!");
   yuShouJia = false;
  } else if (!pattern.test($("#userPhone").val())) {
   alert("手機(jī)號(hào)格式錯(cuò)誤");
   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 >
  <div class="floor floor_purple"
   >
   <div class="liebiao"
   <!-- 給后臺(tái)傳一個(gè)id -->
   <input name="id" type="hidden" id="id" value="$!obj.id" />
   </div>
   <div class="liebiao">
   <!-- <span class="liebiao_left" >*</span> -->
   <span class="liebiao_left">產(chǎn)品名稱:</span> <input id="userName"
    type="text" name="product_name" class="shuruk"
    placeholder="例:靈寶SOD蘋果(*必填項(xiàng) *)" />
   </div>
   <div class="liebiao">
   <span class="liebiao_left">產(chǎn)品產(chǎn)地:</span> <input type="text"
    value="" name="product_origin" class="shuruk" id="candi"
    placeholder="例:靈寶寺河山(*必填項(xiàng) *)" />
   </div>
   <div class="liebiao">
   <span class="liebiao_left">產(chǎn)品畝產(chǎn)量:</span> <input type="text"
    value="" name="mu_yield" class="shuruk" id="muchan"
    placeholder="例:每畝產(chǎn)量(*必填項(xiàng) *)" />
   </div>
   <div class="liebiao">
   <span class="liebiao_left">產(chǎn)品總產(chǎn)量:</span> <input type="text"
    value="" name="sum_yield" class="shuruk"
    placeholder="例:總產(chǎn)量(*必填項(xiàng) *)" id = 'zongChan'/>
   </div>
   <div class="liebiao" >
   <span class="liebiao_left"
    >產(chǎn)品詳情:</span>
   <textarea type="text" value="" id="xiangqing"
    name="product_details" class="shuruk02"
    placeholder="例:產(chǎn)品種植標(biāo)準(zhǔn)、產(chǎn)品優(yōu)點(diǎn)、產(chǎn)品性能、儲(chǔ)存注意事項(xiàng)等(*必填項(xiàng) *)"></textarea>
   </div>
   <div class="liebiao">
   <span class="liebiao_left">產(chǎn)品預(yù)售參考價(jià):</span> <input type="text"
    value="" id="yushoujia" name="advance_price" class="shuruk"
    placeholder="例:以每500g為單位(*必填項(xiàng) *)" />
   </div>
   <div class="liebiao">
   <span class="liebiao_left">站主聯(lián)系方式:</span> <input id="userPhone"
    value="" name="phone" class="shuruk" 
    placeholder="(*必填項(xiàng) *)" />
   </div>
   <div class="liebiao" >
   <input type="button" value="立即申請(qǐng)" class="tijiao" onclick="checkForm()">
   </div>
  </div>
  </div>
 </form>

總結(jié)

以上所述是小編給大家介紹的解決JS表單驗(yàn)證只有第一個(gè)IF起作用的問題,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)億速云網(wǎng)站的支持!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI