vue-正則寫法形式
簡介
vue中我們一般可以使用以下三種形式,前兩種中每個輸入框只能填寫一個,如果我們是for迴圈出來的,我們使用第三種繫結module的形式。
一對一:html中直接replace(本次使用onkeyup事件)
<van-field
v-model="createNameDataList.managementNamevalue"
:placeholder="fieldTipsInfo.placeholder"
clearable
:maxlength="fieldTipsInfo.maxlength"
onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\.]/g,'')"
/>
一對一 :使用指令正則
// *@描述:數字和小數點輸入框指令
// *@版本:V1.0
// *@作者:herry
// *@Date:2020年5月21日09:04:11
// *@最後修改人:
// *@LastEditTime:
import Vue from "vue";
function onInput(el, ele, binding, vnode) {
function handle() {
// 只保留數字
// ele.value = ele.value.replace(/[^\d]/g, "");
ele.value = ele.value.replace(/[^\d.]/g, "");
}
return handle;
}
const numberInput = {
bind(el, binding, vnode) {
const ele = el.tagName === "INPUT" ? el : el.querySelector("input");
ele.addEventListener("input", onInput(el, ele, binding, vnode), false);
}
};
Vue.directive("number-input", numberInput);
// 使用方法:
//
{/*
1. import '../../api/Super/instruction/v-number-input'
2. <van-field v-model="model" v-number-input></van-field>
3. data(){
model:""
}
*/}
一對多:使用值正則
- vue 檔案
<!--
*@描述:test
*@版本:V1.0
*@作者:herry
*@Date:2020年3月28日08:22:14
*@最後修改人:herry
*@LastEditTime:2020年3月28日08:22:14
*@說明:-->
<template>
<div>
<div id="textInput">
<van-field
v-for="index in 10"
:key="index"
:input="test(index)"
v-model="testData[index].model"
></van-field>
</div>
</div>
</template>
<style scoped>
</style>
<script>
import regex from "../../tools/regular-expression/regex";
export default {
data() {
return {
testData: [],
}
},
mounted() {
this.start();
},
methods: {
start() {
for (let index = 0; index < 12; index++) {
this.testData.push({ model: "12345" });
}
},
test(i) {
this.testData[i].model = regex.isNumber(this.testData[i].model);
}
}
};
</script>
- js檔案
export default {
isNumber: function (str) {
var reg = /[^\d.]/g;
return str.replace(reg,"");
},
/*是否帶有小數*/
isDecimal: function (str) {
var reg = /^\d+\.\d+$/;
return str.replace(reg,"");
},
/*校驗是否中文名稱組成 */
ischina: function (str) {
var reg = /^[\u4E00-\u9FA5]{2,4}$/; /*定義驗證表示式*/
return str.replace(reg,""); /*進行驗證*/
},
/*校驗是否全由8位數字組成 */
isStudentNo: function (str) {
var reg = /^[0-9]{8}$/; /*定義驗證表示式*/
return str.replace(reg,""); /*進行驗證*/
},
/*校驗電話碼格式 */
isTelCode: function (str) {
var reg = /^((0\d{2,3}-\d{7,8})|(1[3584]\d{9}))$/;
return str.replace(reg,"");
},
/*校驗郵件地址是否合法 */
IsEmail: function (str) {
var reg = /^\w+@[a-zA-Z0-9]{2,10}(?:\.[a-z]{2,4}){1,3}$/;
return str.replace(reg,"");
}
}
/* 使用方法如下:
import regex from "../../../tools/regular-expression/regex"; // 匯入轉移符html
this.str = escape.isNumber(str)
*/
相關文章
- 使用正則 轉換大小寫
- 正則手記——語法篇
- bash shell 無法使用 perl 正則
- 練完這篇就會寫正則
- js表情正則 手機正則 郵箱正則JS
- 寫爬蟲,不會正則怎麼行?爬蟲
- 單例模式的正確寫法單例模式
- 正則
- 匹配純小寫英文字元正則程式碼字元
- 正則_9
- 正則?=用法
- 正則 ?= 用法
- 「python」正則Python
- 正則re
- Javascript正則JavaScript
- 正則化
- py 正則
- 正則匹配規則2
- Logstash之Grok正則匹配,讓正則進階!
- HTML基本語法和語義寫法規則與例項HTML
- 正則匹配規則記錄
- Java處理正則匹配卡死(正則回溯問題)Java
- nginx配置location總結及rewrite規則寫法Nginx
- 正則請教
- 正則-元字元字元
- Python正則部分Python
- 正則雜談
- javascript 常用正則JavaScript
- 正則筆記筆記
- 這次不會說我的正則教程沒寫全了吧??
- Shell階段09 shell正則,grep正則, sed使用及案例
- 正則匹配數字
- Python中的正則Python
- 正則正常使用1
- Python正則匹配中文Python
- JS 正則學習JS
- java正則反向引用Java
- JavaScript正則爬坑JavaScript