如何在文本字段中模拟退格操作?

2024-02-09

当按下按钮时,我只想在常规文本框中模拟“退格”,删除光标左侧的字符。

谷歌和各种论坛正在就此产生非常随机的结果。执行此操作的正确方法是什么?


这似乎在 Safari 中有效(也可能在 Firefox 中有效),但我还没有在 IE 中测试过它:

  function backspaceAtCursor(id)
  {
    var field = document.getElementById(id);

    if(field.selectionStart)
    {
      var startPos = field.selectionStart;
      var endPos = field.selectionEnd;

      if(field.selectionStart == field.selectionEnd)
      {
        field.value = field.value.substring(0, startPos - 1) + field.value.substring(endPos, field.value.length);

        field.focus(); 
        field.setSelectionRange(startPos - 1, startPos - 1); 
      }
      else
      {
        field.value = field.value.substring(0, startPos) + field.value.substring(endPos, field.value.length);

        field.focus(); 
        field.setSelectionRange(startPos, startPos); 
      }
    }
  }

Use: backspaceAtCursor('elementid')

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在文本字段中模拟退格操作? 的相关文章

随机推荐

  • JGraphX 中的无向图

    我尝试在 JGraphx 中显示图表 只要我使用有向图 一切都很好 但是当我尝试显示一个无向的时 它显示了 有方向 代码来自jgrapht的demo package org jgrapht demo import com mxgraph l
  • 如果失败,如何强制 ansible 重试“apt”任务?

    我有一个ansible在许多机器上运行的剧本 在该剧本中 我尝试使用一些软件包来安装apt 但偶尔会失败 要么是因为其他剧本正在运行 定期更新或任何其他apt实例并行运行并获取锁 我基本上想在放弃之前添加一个重试循环 但未能这样做 因为不支
  • 在哪里可以找到 iText xml 参考?

    我正在评估使用RazorPDF http www nyveldt com blog post Introducing RazorPDF作为我们的报告解决方案 由于某种原因 我找不到任何 iText XML 参考 除了few http std
  • 消息:为 CodeIgniter 中的 foreach 提供的参数无效

    我在 Codeigniter 应用程序中遇到了一些问题 创建了一个类似的函数 function searchUnivtab country this gt input gt post countryKey state this gt inp
  • GCM 令牌刷新以及何时将令牌发送到服务器

    我正在关注一个GCM Android https github com googlesamples google services blob master android gcm app src main java gcm play and
  • angular2:错误:TypeError:无法读取未定义的属性“...”

    我已经附上了我的 angular2 代码片段的 plunker 我想从 JSON 打印一个字段 但无法打印该字段 因为最初我的对象为空 并且它是通过 Promise 填充的 这是我的组件文件 import Component NgModul
  • 改变输出[重复]

    这个问题在这里已经有答案了 可能的重复 稍微改变一下输出 https stackoverflow com questions 13638807 changing the output a bit 问题是 voting borda str 列
  • 使用 spring data jpa 强制插入

    我想强制 CrudRepository save entity 插入一个新实体 而不是先选择该实体 然后在主键已存在时更新它 我会尝试举个例子 public class Lock Id Column private UUID uuid UU
  • UnicodeEncodeError:“ascii”编解码器无法对位置 0-5 中的字符进行编码:序号不在范围(128)[重复]

    这个问题在这里已经有答案了 我只是想解码类似 uXXXX uXXXX uXXXX 的字符串 但我收到一个错误 python Python 2 7 6 default Sep 9 2014 15 04 36 GCC 4 2 1 Compati
  • Numpy 中的 Sigmoid 函数

    为了快速计算 我必须在 Numpy 中实现我的 sigmoid 函数 这是下面的代码 def sigmoid Z Implements the sigmoid activation in bumpy Arguments Z numpy ar
  • PHPExcel setAutoSize 用于合并单元格

    没有合并的代码 objPHPExcel new PHPExcel sheet objPHPExcel gt getActiveSheet sheet gt setCellValueByColumnAndRow 0 1 test test t
  • 如何将 StyleCop 4.7 与 Visual Studio 2013 集成?

    我真的很想在 Visual Studio 2013 中使用 StyleCop 但不幸的是它不起作用 我已经安装了 4 7 版本官方网站 http stylecop codeplex com 检查所有选项 包括 VS Studio 集成和 M
  • Safari 扩展上的应用程序传输安全

    我的应用程序扩展需要打开许多网站的 URL 我这样做 for NSExtensionItem item in self extensionContext inputItems for NSItemProvider itemProvider
  • 如何在C中释放二维数组?

    我有以下代码 int ptr int malloc sizeof int N for int i 0 i
  • Django:更新页面而不重新加载

    我想更新我的主页 html使用按钮操作并显示来自服务器的一些结果 但问题是 当我单击按钮时 整个页面都会重新加载 在这里 我的项目名称是 T2KG 我的表单标签如下所示
  • 如何实现Memcached与数据库同步

    AFAIK Memcached 不支持与数据库同步 至少是 SQL Server 和 Oracle 我们计划将 Memcached 免费 与我们的 OLTP 数据库结合使用 在某些业务流程中 我们进行一些繁重的验证 这需要从数据库中获取大量
  • C# HttpClient.SendAsync 等待抛出 NullReferenceException

    首先 我正在尝试为产品构建一个插件 因此环境不是我的 而且我对正在发生的事情没有太多了解 据我所知 系统正在运行 NET Framework 4 6 2 并且我已尝试确保所有依赖项都与系统上的依赖项相匹配 我看到的问题是 当我发出await
  • 如何融化 pandas 数据框?

    On the pandas questions tagged pandas标签 我经常看到用户询问有关在 pandas 中融化数据框的问题 我将尝试针对这个主题进行规范的问答 自我回答 我要澄清一下 什么是熔化 如何使用熔体 什么时候使用熔
  • 如何在 Rust 中使用单一方法创建文件及其父目录?

    我可以打开一个文件来创建它及其父目录吗OpenOptions或者类似的单一方法 这只会创建一个新文件 如果我的路径包含不存在的目录 它将不起作用 pub fn save file file path String gt Result lt
  • 如何在文本字段中模拟退格操作?

    当按下按钮时 我只想在常规文本框中模拟 退格 删除光标左侧的字符 谷歌和各种论坛正在就此产生非常随机的结果 执行此操作的正确方法是什么 这似乎在 Safari 中有效 也可能在 Firefox 中有效 但我还没有在 IE 中测试过它 fun