Vue獲取表單數(shù)據(jù)的方法
需求
使用Vue收集如下用戶數(shù)據(jù):
獲取數(shù)據(jù)并提交
代碼實(shí)現(xiàn):
將value的值與變量屬性進(jìn)行綁定
v-model.trim = ‘username'
; 去除兩端空格
v-model.number = ‘a(chǎn)ge';
將字符串轉(zhuǎn)為數(shù)值
v-model.lazy = ‘a(chǎn)ge' ;
不是立即收集,而是切換焦點(diǎn)后收集
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>獲取表單數(shù)據(jù)</title> <script src="/static/js/vue.js"></script> </head> <body> <div id="container"> <form action="" @submit.prevent="submit"> <label for="username">用戶名:</label><br> <input type="text" class="username" name="username" placeholder="輸入用戶名" v-model.lazy="user.username"><br> <label for="password">密碼:</label><br> <input type="password" class='password' name="password" placeholder="輸入密碼" v-model="user.password"><br> <label for="age">年齡:</label><br> <!-- type is number,只允許輸入數(shù)字;input中也是字符串 --> <!-- v-model.number,將input的字符串轉(zhuǎn)為數(shù)值 --> <input type="number" name="age" v-model.number="user.age"><br> <label for="">性別:</label> <!-- 非正常的input --> <input type="radio" name="sex" v-model="user.sex" value="female">女 <input type="radio" name="sex" v-model="user.sex" value="male">男 <br> <!-- 多選 --> <label for="">愛好:</label> <input type="checkbox" v-model="user.hobby" value="pingpong">乒乓球 <input type="checkbox" v-model="user.hobby" value="basketball">籃球 <input type="checkbox" v-model="user.hobby" value="football">足球 <br> <!-- 下拉選框 --> <span>選擇城市:</span><br> <select name="city" v-model="user.city" id=""> <option value="">選擇城市</option> <option value="zz">鄭州</option> <option value="wh">武漢</option> <option value="bj">北京</option> </select> <br> <!-- 文本框 --> <label for="">描述:</label><br> <textarea name="desc" v-model="user.desc"></textarea> <br> <!-- 協(xié)議 --> <input type="checkbox" name="agree" v-model="user.agree">閱讀并接受<a >《用戶協(xié)議》</a> <!-- 點(diǎn)擊按鈕 提交 --> <button :style="{display:'block',backgroundColor:'lightblue',}">提交</button> <!-- submit 提交 --> <!-- <input type="submit" value="提交"> --> </form> </div> <script> Vue.config.productionTip = false new Vue({ el: "#container", data: { user: { username: "", password: "", age: "", sex: "", hobby: [], city: "", desc: "", agree: "", } }, methods: { submit(event){ console.log("提交表單") // 在form內(nèi),參數(shù)自動(dòng)提交 console.log(JSON.stringify(this.user)) }, }, }) </script> </body> </html>
模板過濾器
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>模板過濾器</title> <script src="/static/js/vue.js"></script> <script src="/static/js/dayjs.min.js"></script> </head> <body> <div id="container"> <!-- 過濾器 --> <span>{{ time | timeFormatter}}</span><br> <!-- 傳參數(shù)的過濾器 第一個(gè)參數(shù)永遠(yuǎn)是管道數(shù)據(jù)--> <span>{{ time | timeFormatter("YY-MM-DD hh:mm:ss")}} </span> <!--也可以多個(gè)過濾器串聯(lián)--> </div> <script> Vue.config.productionTip = false //全局過濾器,所有組件中都可以使用 Vue.filter("myFilter", function(value){ return '全局過濾' }) new Vue({ el: "#container", data: { time: 1639579694662, //時(shí)間戳,不是字符串 }, //局部過濾器,組件內(nèi)部使用 filters: { timeFormatter(time, format){ // 第一個(gè)參數(shù) if(format){ return dayjs(time).format(format) }else{ return dayjs(time).format("YYYY-MM-DD HH:mm:ss") } }, }, }) </script> </body> </html>
過濾器的使用場(chǎng)景
1.插值語法中使用
2.v-bind
:屬性 =‘ xx| xx '
處理一些簡(jiǎn)單的操作,產(chǎn)生了新數(shù)據(jù)
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
Vue3?+?elementplus實(shí)現(xiàn)表單驗(yàn)證+上傳圖片+?防止表單重復(fù)提交功能
這篇文章主要介紹了Vue3?+?elementplus?表單驗(yàn)證+上傳圖片+?防止表單重復(fù)提交,本文給大家展示效果圖和完整代碼,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-10-10vue短信驗(yàn)證性能優(yōu)化如何寫入localstorage中
這篇文章主要介紹了vue短信驗(yàn)證性能優(yōu)化寫入localstorage中的方法,解決這個(gè)問題需要把時(shí)間都寫到localstorage里面去,具體解決方法大家參考下本文2018-04-04Vue?打包優(yōu)化之externals抽離公共的第三方庫詳解
這篇文章主要為大家介紹了Vue?打包優(yōu)化之externals抽離公共的第三方庫詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>2023-06-06Vue-router不允許導(dǎo)航到當(dāng)前位置(/path)錯(cuò)誤原因以及修復(fù)方式
本文主要介紹了Vue-router不允許導(dǎo)航到當(dāng)前位置(/path)錯(cuò)誤原因以及修復(fù)方式,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09vue實(shí)現(xiàn)錨點(diǎn)跳轉(zhuǎn)scrollIntoView()使用案例
這篇文章主要介紹了vue實(shí)現(xiàn)錨點(diǎn)跳轉(zhuǎn)scrollIntoView()使用案例,文中結(jié)合實(shí)例代碼介紹了vue錨點(diǎn)跳轉(zhuǎn)的三種方式(頁內(nèi)跳轉(zhuǎn),跨頁跳轉(zhuǎn),函數(shù)跳轉(zhuǎn)),需要的朋友可以參考下2023-07-07使用ElementUI寫一個(gè)前端分頁查詢的實(shí)例
本文主要介紹了使用ElementUI寫一個(gè)前端分頁查詢的實(shí)例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02VUE實(shí)現(xiàn)可隨意拖動(dòng)的彈窗組件
今天小編就為大家分享一篇VUE實(shí)現(xiàn)可隨意拖動(dòng)的彈窗組件,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-09-09vue使用better-scroll實(shí)現(xiàn)下拉刷新、上拉加載
這篇文章主要為大家詳細(xì)介紹了vue使用better-scroll實(shí)現(xiàn)下拉刷新、上拉加載,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11