微信小程序开发:禁止输入表情的控制,验证方法,光标控制

<input class="weui-input" name="receiptMan" maxlength="10" bindinput="inputVal" data-name="receiptMan" value="{{form.receiptMan}}" placeholder="请输入姓名" />

regStrFn: function(str){
  let reg = /([^\u0020-\u007E\u00A0-\u00BE\u2E80-\uA4CF\uF900-\uFAFF\uFE30-\uFE4F\uFF00-\uFFEF\u0080-\u009F\u2000-\u201f\u2026\u2022\u20ac\r\n])|(\s)/g ,
  indexArr = reg.exec(str);
if(str.match(reg)) {
  str = str.replace(reg, '');
}
  let obj = { val: str, index: indexArr}
  return obj
},
inputVal: function (e) {
  let name = 'form.' + e.target.dataset.name
  let val = e.detail.value,
  pos = e.detail.cursor;
  let reg = /([^\u0020-\u007E\u00A0-\u00BE\u2E80-\uA4CF\uF900-\uFAFF\uFE30-\uFE4F\uFF00-\uFFEF\u0080-\u009F\u2000-\u201f\u2026\u2022\u20ac\r\n])|(\s)/g
if (!reg.test(val)){
  return
}
  let obj = this.regStrFn(val)

if (pos != -1 && obj.index) {
/  /计算光标的位置
  pos = obj.index.index
}
return {
  value: obj.val,
  cursor: pos
}
},

猜你喜欢

转载自www.cnblogs.com/zhaoxiaobei/p/9283165.html