微信小程序-输入框输入文字后,将光标移到文字中间,接着输入文字后光标又自动跳到最后...

 

问题描述:

  input输入框输入一段文字后,将光标移到文字中间,接着输入文字后光标又自动跳到最后去了。

原因:

  input事件中,给input框绑定任何事件后,在处理事件时 setData之后就会让光标到最后。说白了就是数据发生更新导致光标跑到最后。

 <input bindinput="sendText" confirm-type="send" value='{{sendVal}}' bindconfirm="send" />

   bindinput : 键盘输入时触发

  bindconfirm :点击完成按钮时触发


js文件中:
  sendText: function (e) {
    var _This = this;
    _This.setData({
      send_val: e.detail.value,
    })
  },

 

解决思路:

  设置两个值。sendVal 为 input 的value值,send_val 为暂时存储value值,sendText 方法负责将 e.detail.value 的值复制给 send_val

 

消息发送后将两个值都进行清空。

send : function (){
    if (sendValue == "") {
      wx.showToast({
        title: '不能发送空白信息'
      })
      return false;
    }

    this.setData({
      sendVal: "",
      send_val: ""
    })


}

  

 

转载于:https://www.cnblogs.com/zhangym118/p/9274393.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值