利用vue.js 實現輸入框輸入值自動過濾特殊字符的功能?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
<Input v-model="relatedWords" type="textarea" placeholder="請輸入" @input='verifyInput(formItem.relatedWords)'/>
verifyInput(v){
let _this=this;
let punctuation = /[`~!@#$%^&*_\-=<>?:"{}|.\/;'\\[\]·~!@#¥%……&——\-={}|《》?:“”【】、;‘'。、]/im;
let arr=v.split('')
let str=''
arr.map(i=>{
if(!punctuation.test(i)){
str+=i
}
})
str=str.replace(/(/g,'(')
str=str.replace(/)/g,')')
str=str.replace(/,/g,',')
this.$nextTick(j=>{
this.relatedWords=str
})
},補充知識:vue el-input 禁止輸入特殊字符 只可輸入數字 正則驗證
我就廢話不多說了,大家還是直接看代碼吧~
<el-input
size="small"
v-model="city"
placeholder="請輸入城市名稱"
@blur="addCity(scope.$index)"
@keyup.native="btKeyUp"
@keydown.native="btKeyDown"
></el-input>
// methods內
// 只能輸入漢字、英文、數字
btKeyDown(e) {
e.target.value = e.target.value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5]/g,"");
},
//限制輸入特殊字符
btKeyUp(e) {
e.target.value = e.target.value.replace(/[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]·~!@#¥%……&*()——\-+={}|《》?:“”【】、;‘',。、]/g,"");
}在el-input 內 使用 keyup等事件 需要添加 .native 否則無法正常執行事件
下面是 只可輸入數字
<el-input
size="small"
v-model="scope.row.order_number"
v-show="scope.row.isShowInp_order"
@blur="editOrder(scope.$index,scope.row)"
v-focus
@keyup.native="UpNumber"
@keydown.native="UpNumber"
class="table_input"
></el-input>
// 只可輸入數字
UpNumber(e) {
e.target.value = e.target.value.replace(/[^\d]/g,"");
}看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。