input 输入后修改 光标自动跳回尾端

发布于 6 年前作者 wcai8246 次浏览最后编辑 6 年前来自 ask

用户希望输入12345678,但是错输成12ab5678,此时希望把光标定位到b后面(12ab|5678)删除ab,重新输入34,安卓真机是可以的,ios真机上发现有问题:用户删除b,光标就自动回到尾端(变成12a5678|)

10 回复
xieyang
xieyang1 楼6 年前

看不了

zhouchao
zhouchao2 楼6 年前

包括textarea也存在同样问题

lihou
lihou3 楼6 年前

bindinput函数里面 this.data.name = “zhangsan”

这么写应该没事setData会渲染页面导致光标跳

yangtao
yangtao4 楼6 年前

wxml…

<input  maxlength=“11” bindinput=“tel” placeholder=“请输入手机号”  value=“{{tel}}” />

js…

  tel:function(e){ // 手机号码输入

  let tel=e.detail.value;

        this.setData({tel:tel});

  },

tqian
tqian5 楼6 年前

iOS 下仅支持 UTF8 编码格式

mingyao
mingyao7 楼6 年前

是bindinput 事件 setDate渲染页面造成的,解决方法:只把值保存下来,不用setData

chengyan
chengyan8 楼6 年前

哈哈,感谢,我去试下,有ios在具体测试

iding
iding9 楼6 年前

可以直接复制上面贴出的代码

eluo
eluo10 楼4 年前

是这样写的。应该怎么写比较好?