中英文输入法字段自定义判断长度判断

 
            // 字符长度判定
                let _maxInputWordLength = (this.maxInputWordLength) * 2; // 默认 maxInputWordLength = 10 需求(限制长度是个字符和小写字母20个)
                let _wordLength = 0; 当前长度
                let _cutIndex = 10; 截取长度
              // _anchorNodeStr 获取输入字段          
              for (let i = 0; i < this._anchorNodeStr.length; i++) {
                    if (_anchorNodeStr.charCodeAt(i) >= 97 && _anchorNodeStr.charCodeAt(i) <= 122) {
                        _wordLength++;
                    } else {
                        _wordLength += 2;
                    }
                      if (_wordLength > _maxInputWordLength) {
                        _cutIndex = i;
                        break;
                    }
                }
                if (_wordLength > _maxInputWordLength) {
                     alert( 最多输入10个字符哦)
                 }

 

2. 正常输入长短判定时输入框个数

 
 
// 键盘事件
            keyDown () {
                let that = this
                document.onkeydown = (e) => {
                    let el = e || event || window.event;
                    console.log(Number(el.keyCode), Number(el.keyCode) === 229, 119)
                    this.isCh = Number(el.keyCode) === 229 // isCh 是否汉字输入标识
                    // isDisabledKeyDown 键盘事件禁用标识  // curElent 选中输入对象
                    if (!!that.curElent && that.isDisabledKeyDown && Number(el.keyCode) !== 8) { el.preventDefault(); return false }
                }
            },
 
posted @ 2022-08-25 14:14  libenzheng  阅读(29)  评论(0)    收藏  举报