javascript - 如何在电话号码输入中插入连字符?

标签 javascript android cursor keypad

我有一个 JavaScript,可以自动连字符连接用户在文本字段中输入的电话号码。它可以在 iPhone 上找到,但在 android 上会显示连字符并且光标也会到达正确的位置(在连字符之后)但是当用户键入数字时它会显示在连字符之前吗?

这个问题与什么有关?

这是我的脚本:

if((input.value.length == 3) || (input.value.length == 7) {
    input.value = input.value + "-";
    input.setSelectionRange(input.value.length,input.value.length);
}

最佳答案

试试这个:

if((input.value.length == 3) || (input.value.length == 7)) {
  setTimeout(function() {
    input.value = input.value + "-";
    input.setSelectionRange(input.value.length,input.value.length);
  }, 10);
}

关于javascript - 如何在电话号码输入中插入连字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6103476/

相关文章:

javascript - 如何在VML中访问拉斐尔填充图像

javascript - 使用 JavaScript 的带背景图像的径向光标

android - 在绘制框架中使用多个着色器程序进行渲染(在 OpenGL-ES 2.0 中)

android - Joda DateTime 时区未正确显示

Oracle - 从引用游标中选择特定列

java - 如何更改 Java AWT 和/或 Swing 中的光标图像?

javascript - jquery:json请求输出

javascript - 为什么此代码可以在单独的文件上运行但不能内联

javascript - 使用 browserify 进行条件编译/要求(消除死代码)

java - Android Java 检索 JSON 值并将其作为对象存储在列表中