zoukankan      html  css  js  c++  java
  • 自定义指令 限制input 的输入位数

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>限制input输入的位数</title>
    </head>
    <body>
          <div id="app">
             <input type="text"   v-split.5="msg"/>
          </div>
    </body>
    <script src="./node_modules/vue/dist/vue.js"></script>  
    <script>
        //设置input 的输入位数
      Vue.directive('split',{
          update(el,bindings,vnode) {
                console.log(bindings);
                let [,len]  = bindings.rawName.split('.');
                console.log(len)
                let ctx = vnode.context;  //msg
                el.addEventListener('input',(e)=>{
                    let  val  =  e.target.value.slice(0,len);
                    ctx[bindings.expression]=val;
                    el.value = val;
                })
                //默认值
                el.value=ctx[bindings.expression];
          },
          bind(el,bindings,vnode) {
               let ctx = vnode.context;  //msg
               let [,len]  = bindings.rawName.split('.');
                el.addEventListener('input',(e)=>{
                    let  val  =  e.target.value.slice(0,len);
                    ctx[bindings.expression]=val;
                    el.value = val;
                })
                 //默认值
                 el.value=ctx[bindings.expression];
          }

      })
      let vm = new Vue({
          el:"#app",
          data() {
             return {
                 msg:'a'
             }
          }
      })
    </script>
    </html>
     
     
     
     
    el,bindings,vnode
     
    el表示 html 元素
    bindings 表示绑定的元素上的属性
    vnode 表示绑定元素的虚拟node
  • 相关阅读:
    English trip V1
    English trip V1
    第一类斯特林数
    bzoj 3601 一个人的数论
    bzoj 4407 于神之怒加强版
    bzoj 2693 jzptab
    bzoj 4184 shallot
    luogu P3920 [WC2014]紫荆花之恋
    bzoj 4269 再见Xor
    luogu P2183 [国家集训队]礼物
  • 原文地址:https://www.cnblogs.com/guangzhou11/p/11565198.html
Copyright © 2011-2022 走看看