element中el-table中的el-input校驗(yàn)的實(shí)現(xiàn)
本文主要介紹了element中el-table中的el-input校驗(yàn)的實(shí)現(xiàn),具體如下:
<el-form ? ? ? ? ? ? :model="formParams" ? ? ? ? ? ? :rules="rules" ? ? ? ? ? ? ref="ruleForm" ? ? ? ? ? ? label-width="0"> ? ? ? ? ? ? <el-tabs v-model="activeName" type="card" @tab-click="changeTab"> ? ? ? ? ? ? ? <el-tab-pane v-for="item in tabList" :name="item.name" :key="item.id"> ? ? ? ? ? ? ? ? <div slot="label"> ? ? ? ? ? ? ? ? ?{{item.name}}({{totalCount[item.name] || 0}}) ? ? ? ? ? ? ? ? </div> ? ? ? ? ? ? ? ? <el-table ? ? ? ? ? ? ? ? ? v-show="activeName==='xxx'" ? ? ? ? ? ? ? ? ? :row-class-name="tableRowClass" ? ? ? ? ? ? ? ? ? :data="formParams.xxxData" ? ? ? ? ? ? ? ? ? border> ? ? ? ? ? ? ? ? ? <el-table-column ? ? ? ? ? ? ? ? ? ? min-width="10%" ? ? ? ? ? ? ? ? ? ? prop="num" ? ? ? ? ? ? ? ? ? ? label="數(shù)量"> ? ? ? ? ? ? ? ? ? ? <template slot-scope="scope"> ? ? ? ? ? ? ? ? ? ? ? <el-form-item :prop="'xxxData.' + scope.$index + '.num'" :rules="rules.num"> ? ? ? ? ? ? ? ? ? ? ? ? <el-input v-model="scope.row.num" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? maxlength="6" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? @input="value => scope.row.num= Number(value.replace(/[^\d]/g,''))" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? size="small"></el-input> ? ? ? ? ? ? ? ? ? ? ? </el-form-item> ? ? ? ? ? ? ? ? ? ? </template> ? ? ? ? ? ? ? ? ? </el-table-column> ? ? ? ? ? ? ? ? ? <el-table-column ? ? ? ? ? ? ? ? ? ? min-width="20%" ? ? ? ? ? ? ? ? ? ? label="時(shí)間"> ? ? ? ? ? ? ? ? ? ? <template slot-scope="scope"> ? ? ? ? ? ? ? ? ? ? ? <el-time-picker ? ? ? ? ? ? ? ? ? ? ? ? style="width: 45%" ? ? ? ? ? ? ? ? ? ? ? ? v-model="scope.row.startTime" ? ? ? ? ? ? ? ? ? ? ? ? value-format="HH:mm:ss" ? ? ? ? ? ? ? ? ? ? ? ? :picker-options="{ ? ? ? ? ? ? ? ? ? ? ? ? ? selectableRange: '00:00:00 - 12:59:59' ? ? ? ? ? ? ? ? ? ? ? ? }" ? ? ? ? ? ? ? ? ? ? ? ? size="small" ? ? ? ? ? ? ? ? ? ? ? ? placeholder="開(kāi)始時(shí)間"> ? ? ? ? ? ? ? ? ? ? ? </el-time-picker> - ? ? ? ? ? ? ? ? ? ? ? <el-time-picker ? ? ? ? ? ? ? ? ? ? ? ? style="width: 45%" ? ? ? ? ? ? ? ? ? ? ? ? v-model="scope.row.endTime" ? ? ? ? ? ? ? ? ? ? ? ? value-format="HH:mm:ss" ? ? ? ? ? ? ? ? ? ? ? ? :picker-options="{ ? ? ? ? ? ? ? ? ? ? ? ? ? selectableRange: `${scope.row.startTime ? scope.row.startTime : '00:00:00'}-12:59:59`, ? ? ? ? ? ? ? ? ? ? ? ? }" ? ? ? ? ? ? ? ? ? ? ? ? size="small" ? ? ? ? ? ? ? ? ? ? ? ? placeholder="結(jié)束時(shí)間"> ? ? ? ? ? ? ? ? ? ? ? </el-time-picker> ? ? ? ? ? ? ? ? ? ? </template> ? ? ? ? ? ? ? ? ? </el-table-column> ? ? ? ? ? ? ? ? ? <el-table-column ? ? ? ? ? ? ? ? ? ? min-width="10%" ? ? ? ? ? ? ? ? ? ? label="操作"> ? ? ? ? ? ? ? ? ? ? <template slot-scope="scope"> ? ? ? ? ? ? ? ? ? ? ? <a ?@click="delete(scope.$index)">刪除</a> ? ? ? ? ? ? ? ? ? ? </template> ? ? ? ? ? ? ? ? ? </el-table-column> ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? </el-table> ? ? ? ? ? ? ? </el-tab-pane> ? ? ? ? ? ? </el-tabs> ? ? ? ? ? </el-form>
1. 點(diǎn)擊保存的時(shí)候校驗(yàn)num
data() { return { num: [ { required: true, message: '請(qǐng)輸入數(shù)量', trigger: 'change' }, ] } }, methods: { submitForm(formName) { this.$refs[formName].validate(valid => { if (valid) { alert("submit!"); } else { return false; } }); } }
2. 由于每個(gè)tab頁(yè)對(duì)應(yīng)展示不同的數(shù)據(jù)列表,并且每個(gè)列表可以添加一條新的數(shù)據(jù),如果想在保存時(shí)提示具體信息,如果"xxx的數(shù)量不能為空",“yyy的數(shù)量不能為空”,可以在點(diǎn)擊保存時(shí)對(duì)不同的數(shù)據(jù)列表進(jìn)行循環(huán)
this.validateNum(this.formParams.xxxData, 'xxx'); this.validateNum(this.formParams.yyyData, 'yyy'); validateNum(list, msg) { ? ? ? if (list && list.length && list.findIndex(item => item.num === '') !== -1) { ? ? ? ? this.tips.push(msg); ? ? ? } ? ? } if (this.tips.length) { ? ? ? ? message += `${this.tips.join('、')}的數(shù)量不能為空;`; ?}
3. 如果把<el-form>放在<el-tab>循環(huán)里面,在v-for循環(huán)中使用form表單驗(yàn)證this.$refs[formName].validate會(huì)出現(xiàn)錯(cuò)誤TypeError: this.$refs[formName].validate is not a function:
由于this.$refs[formName]是一個(gè)數(shù)組,使用this.$refs[formName][0].validate((valid) => {}
4. time-picker中想要設(shè)置結(jié)束時(shí)間大于開(kāi)始時(shí)間
selectableRange: `${scope.row.startTime ? scope.row.startTime : '00:00:00'}-12:59:59`
5. 給el-table中的指定行指定特殊的樣式
tableRowClass(val) { if (val.row.type === 'xxxxxx') { return 'row-disable'; } else { return ''; } }
6. el-input中限制只能輸入數(shù)字
<el-input v-model="count" @input="value => count = Number(value.replace(/[^\d]/g,''))" </el-input>
到此這篇關(guān)于element中el-table中的el-input校驗(yàn)的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)el-table中的el-input校驗(yàn)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 基于Vue+elementUI實(shí)現(xiàn)動(dòng)態(tài)表單的校驗(yàn)功能(根據(jù)條件動(dòng)態(tài)切換校驗(yàn)格式)
- 詳解element-ui 表單校驗(yàn) Rules 配置 常用黑科技
- Vue ElementUi同時(shí)校驗(yàn)多個(gè)表單(巧用new promise)
- element表單驗(yàn)證如何清除校驗(yàn)提示語(yǔ)
- vue elementUI 表單校驗(yàn)功能之?dāng)?shù)組多層嵌套
- Vue?elementUI表單嵌套表格并對(duì)每行進(jìn)行校驗(yàn)詳解
- element form 校驗(yàn)數(shù)組每一項(xiàng)實(shí)例代碼
- element多個(gè)表單校驗(yàn)的實(shí)現(xiàn)
- 詳解基于element的區(qū)間選擇組件校驗(yàn)(交易金額)
相關(guān)文章
一看就會(huì)的vuex實(shí)現(xiàn)登錄驗(yàn)證(附案例)
這篇文章主要介紹了一看就會(huì)的vuex實(shí)現(xiàn)登錄驗(yàn)證(附案例),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01vue實(shí)現(xiàn)秒殺倒計(jì)時(shí)組件
這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)秒殺倒計(jì)時(shí)組件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-04-04vue基于input實(shí)現(xiàn)密碼的顯示與隱藏功能
這篇文章主要介紹了vue基于input實(shí)現(xiàn)密碼的顯示與隱藏功能,文末給大家介紹了vue?如何實(shí)現(xiàn)切換密碼的顯示與隱藏效果,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-01-01electron-vue?項(xiàng)目添加啟動(dòng)loading動(dòng)畫(huà)的實(shí)現(xiàn)思路
electron-vue腳手架搭建的項(xiàng)目,在開(kāi)發(fā)階段可能你注意不到項(xiàng)目啟動(dòng)慢的問(wèn)題,但是在build?生成的exe可執(zhí)行文件,啟動(dòng)后,要反應(yīng)很久才能進(jìn)入到app.vue?中加載的頁(yè)面,體驗(yàn)性很差,本文給大家介紹electron?vue啟動(dòng)動(dòng)畫(huà)效果的實(shí)例代碼,感興趣的朋友一起看看吧2022-01-01Vuex 使用及簡(jiǎn)單實(shí)例(計(jì)數(shù)器)
這篇文章主要介紹了Vuex 使用及簡(jiǎn)單實(shí)例(計(jì)數(shù)器),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-08-08如何使用 vue-cli 創(chuàng)建模板項(xiàng)目
這篇文章主要介紹了如何使用 vue-cli 創(chuàng)建模板項(xiàng)目,幫助大家更好的理解和學(xué)習(xí)vue框架的知識(shí),感興趣的朋友可以了解下2020-11-11vue的全局變量和全局?jǐn)r截請(qǐng)求器的示例代碼
這篇文章主要介紹了vue的全局變量和全局?jǐn)r截請(qǐng)求器的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-09-09Vue項(xiàng)目如何改變屏幕尺寸重新刷新頁(yè)面-計(jì)算頁(yè)面尺寸
這篇文章主要介紹了Vue項(xiàng)目如何改變屏幕尺寸重新刷新頁(yè)面-計(jì)算頁(yè)面尺寸,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09Vue3 ref構(gòu)建響應(yīng)式變量失效問(wèn)題及解決
這篇文章主要介紹了Vue3 ref構(gòu)建響應(yīng)式變量失效問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04