【问题标题】:Press "Delete" key using javascript?使用javascript按“删除”键?
【发布时间】:2020-05-29 10:27:02
【问题描述】:

在 Javascript 或 jquery 中是否有任何方法可以在内部单击“删除”按钮来删除 HTML 网页中的某些文本? 我不希望我的用户实际单击“删除”按钮,但我想为他们提供界面,当他们单击时,我将在那里应用“删除”按钮功能。

【问题讨论】:

  • 您为什么希望用户删除您的 HTML 文本?
  • 您可以使用elem.innerHTML = '' 清除元素的内容,也可以使用contents.substring(0,contents.length-1) 之类的方法将最后一个字符截断
  • 你能提供你想要的样品吗?
  • 这是我唯一想要的,我希望在我拥有的文本编辑器中执行删除按钮的功能,点击我制作的自定义选项。
  • 也许this article 对你有用。

标签: javascript jquery html web


【解决方案1】:

您可以使用keydown 函数触发它:

$(function(){
    var press = jQuery.Event("keyup");
    press.ctrlKey = false;
    press.which = 46;

    $('#check').keyup(function(e){

        alert(e.which);
    }).trigger(press);
});

但此解决方案不会模拟 HTML 元素上的自然按键事件。此方法仅触发 keyup 事件,它不会复制用户进入元素并按下该键。为此,您可以参考HERE

但是这个调度事件也不是全局支持的。

我认为在单击按钮时应用删除按钮的功能可以满足您的要求

只需点击按钮写$("input").val("") 或按照上面给出的@haxxton 的答案,或SEE DEMO HERE

【讨论】:

    【解决方案2】:

    关于我对 OP 的进一步评论。

    假设你的 HTML 看起来像

    <p id="deleteMe">This text should be deleted</p>
    <button id="deleteButton">DELETE</button
    

    选项 1

    如果您的意图是删除您可以使用的元素的整个文本

    var deleteButton = document.getElementById('deleteButton');
    deleteButton.onclick = function(){
        var deleteItem = document.getElementById('deleteMe');
        deleteItem.innerHTML = '';
    }
    

    选项 2

    但是,如果您打算每次点击只删除一个字符,您可以使用类似

    var deleteButton = document.getElementById('deleteButton');
    deleteButton.onclick = function(){
        var deleteItem = document.getElementById('deleteMe');
        deleteItem.innerHTML = deleteItem.innerHTML.substring(0, deleteItem.innerHTML.length - 1);
    }
    

    【讨论】:

      【解决方案3】:

      请访问:Is it possible to simulate key press events programmatically?

      您可以使用 46 代替

      的键码
      character.charCodeAt(0)
      

      【讨论】:

        【解决方案4】:

        使用jQuery 在内部调用事件很简单:

        $('#delete').click(); // call internally to 'Delete' button
        

        它会启动包含删除功能的点击事件。

        查看更完整的演示:http://jsfiddle.net/581env0c/2/

        【讨论】:

          猜你喜欢
          • 2018-04-20
          • 2019-05-27
          • 2017-06-22
          • 1970-01-01
          • 2013-05-20
          • 2021-08-23
          • 2018-01-20
          • 1970-01-01
          相关资源
          最近更新 更多