欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue表單提交點(diǎn)擊事件只允許點(diǎn)擊一次的實(shí)例

 更新時(shí)間:2020年10月23日 09:03:20   作者:Aybuai  
這篇文章主要介紹了Vue表單提交點(diǎn)擊事件只允許點(diǎn)擊一次的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

常用出現(xiàn)場(chǎng)景:商城點(diǎn)擊訂單提交

1、使用Vue封裝事件

body:

<template>
 <div>
 <el-button @click.once="submitOrder()">提交訂單</el-button>
 </div>
</template>

方法:

methods: {
 submitOrder() {
 // 處理邏輯
 }
}

2、使用原生JS事件

在數(shù)據(jù)data里面聲明一個(gè)flag屬性

data() {
 return {
 isSubmit: true;
 }
}

body:

<template>
 <div>
 <el-button @click="submitOrder()">提交訂單</el-button>
 </div>
</template>

方法:

methods: {
 submitOrder() {
 if (this.isSubmit) {
 this.isSubmit = false;
 // 處理邏輯
 }
 }
}

補(bǔ)充知識(shí):表單驗(yàn)證提交內(nèi)容不能為空的幾種方法

方法一:

使用css的required屬性

<input type="" required="required" name="" id="" value="" />

方法二:

使用JS代碼示例,注意事項(xiàng):form要加上onSubmit事件,form.xx.vlaue要在表單中對(duì)應(yīng)name

<script type="text/javascript">
function beforeSubmit(form){
if(form.username.value==''){
alert('用戶名不能為空!');
form.username.focus();
return false;
}
if(form.password.value==''){
alert('密碼不能為空!');
form.password.focus();
return false;
}
if(form.password.value.length<6){
alert('密碼至少為6位,請(qǐng)重新輸入!');
form.password.focus();
return false;
}
if(form.password.value!=form.password2.value) {
alert('你兩次輸入的密碼不一致,請(qǐng)重新輸入!');
form.password2.focus();
return false;
}
return true;
}
</script>

<fieldset>
  <legend>用戶注冊(cè)</legend>
  <form method="post" name="form" action="user.do?method=register" onSubmit="return beforeSubmit(this);">
   <table border="1" width="100%" cellspacing="0" cellpadding="0">
   <tr><td><label>用戶名:<input type="text" name="username" value=""></label></td></tr>
   <tr><td><label>密  碼:<input type="password" name="password" value=""></label></td></tr>
   <tr><td><label>重復(fù)密碼:<input type="password" name="password2" value=""></label></td></tr>
   <tr><td><input value="注冊(cè)" type="submit"> <input type="reset" value="重置"></td></tr>   
   </table>
  </form>
</fieldset>

方法三:

使用jQuery方法(通過class驗(yàn)證),需要引用jquery.min.js

優(yōu)勢(shì):

1:為input添加class,名字可以隨意設(shè)置,但每個(gè)input需要保持一致,本章案例calss設(shè)置為noNull。(若input已有class屬性,可直接加到其后)

2:為input添加一個(gè)屬性,用來后期通過jquery獲取該字段,用作提示語。本章案例提示屬性為notNull。

3:通過jQuery遍歷頁面中所有calss為noNull的表單,驗(yàn)證其是否為空,若為空,通過獲取notNull的字段,進(jìn)行為空提示。

具體如何設(shè)置,請(qǐng)參照下面的案例。

<!DOCTYPE html>
<html>
<head lang="en">
  <meta charset="UTF-8">
</head>
<body>
  <form>
      <!-- input -->
      <div>
        姓名: <input type="text" name="name" notNull="姓名" class="form-control noNull"> 
      </div>
      <br>
      <!-- radio -->
      <div>
       性別:
       男<input type="radio" name="sex" value="0" class="noNull" notNull="性別">
       女<input type="radio" name="sex" value="1" >
      </div>
      <br>
      <!-- select -->
      <div>
        年齡:
        <select name="age" class="noNull" notNull="年齡">
          <option value ="">請(qǐng)選擇</option>
          <option value ="1">1</option>
          <option value ="2">2</option>
        </select>
      </div>
      <br>
      <!-- checkbox -->
      <div>
        興趣:
        打球<input type="checkbox" name="hobby" value="1" class="noNull" notNull="興趣">
        唱歌<input type="checkbox" name="hobby" value="2">
        跳舞<input type="checkbox" name="hobby" value="3">
      </div>
      <br>
     <button type="button" class="btn-c" onclick="bubmi()">保存</button>
  </form>

<script src="jquery-1.9.1.min.js"></script>
<script type="text/javascript">
function bubmi(){
  $(".noNull").each(function(){
    var name = $(this).attr("name");
    if($(this).val()==""){
    alert($(this).attr('notNull')+"不能為空");return false;
    }
    if($(this).attr("type")=="radio"){ 
      if ($("input[name='"+name+"']:checked").size() < 1){ 
        alert($(this).attr('notNull')+"不能為空!"); 
        return false; 
      } 
    }
    if($(this).attr("type")=="checkbox"){ 
      if ($('input[name="'+name+'"]:checked').size() < 1){ 
        alert($(this).attr('notNull')+"不能為空!"); 
        return false; 
      } 
    }    
  })  
}
</script>
</body>
</html>

以上這篇Vue表單提交點(diǎn)擊事件只允許點(diǎn)擊一次的實(shí)例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vuex的輔助函數(shù)該如何使用

    vuex的輔助函數(shù)該如何使用

    vue通過輔助函數(shù)mapState、mapActions、mapMutations,把vuex.store中的屬性映射到vue實(shí)例身上,這樣在vue實(shí)例中就能訪問vuex.store中的屬性了,對(duì)于操作vuex.store就很方便了,本文具體的介紹下這些輔助函數(shù)的使用方法
    2021-06-06
  • Vue前端后端的交互方式?axios

    Vue前端后端的交互方式?axios

    這篇文章主要介紹了Vue前端后端的交互方式?axios,axios?為第三方數(shù)據(jù)請(qǐng)求庫,下文具體的內(nèi)容介紹需要的小伙伴可以參考一下,希望對(duì)你的學(xué)習(xí)有所幫助
    2022-04-04
  • vue?跳轉(zhuǎn)頁面$router.resolve和$router.push案例詳解

    vue?跳轉(zhuǎn)頁面$router.resolve和$router.push案例詳解

    這篇文章主要介紹了vue?跳轉(zhuǎn)頁面$router.resolve和$router.push案例詳解,這樣實(shí)現(xiàn)了既跳轉(zhuǎn)了新頁面,又不會(huì)讓后端檢測(cè)到頁面鏈接不安全之類的,需要的朋友可以參考下
    2023-10-10
  • vue中axios的get請(qǐng)求和post請(qǐng)求的傳參方式、攔截器示例代碼

    vue中axios的get請(qǐng)求和post請(qǐng)求的傳參方式、攔截器示例代碼

    Post是向服務(wù)器提交數(shù)據(jù)的一種請(qǐng)求,get是向服務(wù)器發(fā)索取數(shù)據(jù)的一種請(qǐng)求,post在真正接受數(shù)據(jù)之前會(huì)先將請(qǐng)求頭發(fā)送給服務(wù)器進(jìn)行確認(rèn),然后才真正發(fā)送數(shù)據(jù),本文給大家介紹vue中axios的get請(qǐng)求和post請(qǐng)求的傳參方式、攔截器示例代碼,感興趣的朋友一起看看吧
    2023-10-10
  • vue中的@click.native 原生點(diǎn)擊事件

    vue中的@click.native 原生點(diǎn)擊事件

    這篇文章主要介紹了vue中的@click.native 原生點(diǎn)擊事件,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • 詳解Vue項(xiàng)目的打包方式

    詳解Vue項(xiàng)目的打包方式

    這篇文章主要為大家介紹了Vue項(xiàng)目的打包方式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • Vue之Axios的異步請(qǐng)求問題詳解

    Vue之Axios的異步請(qǐng)求問題詳解

    總的來說這并不是一道難題,那為什么要拿出這道題介紹?拿出這道題真正想要傳達(dá)的是解題的思路,以及不斷優(yōu)化探尋最優(yōu)解的過程。希望通過這道題能給你帶來一種解題優(yōu)化的思路,Axios是一個(gè)開源的可以用在瀏覽器端和Node JS的異步通信框架,主要作用就是實(shí)現(xiàn)AJAX異步通信
    2023-02-02
  • 前端框架Vue.js構(gòu)建大型應(yīng)用淺析

    前端框架Vue.js構(gòu)建大型應(yīng)用淺析

    這篇文章主要為大家詳細(xì)介紹了前端框架Vue.js構(gòu)建大型應(yīng)用的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • element ui里dialog關(guān)閉后清除驗(yàn)證條件方法

    element ui里dialog關(guān)閉后清除驗(yàn)證條件方法

    下面小編就為大家分享一篇element ui里dialog關(guān)閉后清除驗(yàn)證條件方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • 關(guān)于vue v-for 循環(huán)問題(一行顯示四個(gè),每一行的最右邊那個(gè)計(jì)算屬性)

    關(guān)于vue v-for 循環(huán)問題(一行顯示四個(gè),每一行的最右邊那個(gè)計(jì)算屬性)

    這篇文章主要介紹了關(guān)于vue v-for 循環(huán)問題(一行顯示四個(gè),每一行的最右邊那個(gè)計(jì)算屬性),需要的朋友可以參考下
    2018-09-09

最新評(píng)論