【问题标题】:Prevent enter from entering textarea防止enter进入textarea
【发布时间】:2015-09-11 01:10:37
【问题描述】:

我想让用户按 enter 并保存文本 的文本区域,但我希望换行符不在文本中应用 的文本区域。这可能吗?

这是我的jsFiddle

e.stopPropagation();

似乎还不够!

【问题讨论】:

    标签: javascript jquery key enter stoppropagation


    【解决方案1】:

    你错过了return false;

    试试here

    【讨论】:

    • 我还可以看到 stopPropagation 不再需要。
    • @gsamaras,视情况而定。如果该textarea 上有其他侦听器,则可以触发它们,如果没有停止事件传播。
    【解决方案2】:

    你所追求的是e.preventDefault()。停止传播只是停止冒泡 DOM 树。

    【讨论】:

    • 我把这个函数换成了stopPropagation,但是效果一样!也许我错过了什么,你能在我的小提琴中展示你在说什么吗?
    • 你的小提琴有语法错误,所以如果你在那里测试它,那就是问题
    • 打开你的开发工具Uncaught SyntaxError: missing ) after argument list
    • 嗯,没有。看控制台
    【解决方案3】:

    试试这个:

    $('#cagetextbox').keypress(function(e){return CancelNewLine(e);});
    
    function CancelNewLine(e)
    {
        var keynum;
        if(window.event) // IE
            keynum = e.keyCode;
        else if(e.which) // Netscape/Firefox/Opera
            keynum = e.which; 
    
        return (keynum != 13);
    }
    

    【讨论】:

      【解决方案4】:

      我刚刚在JSFiddle 中尝试过这段代码,它对我来说很好用

      $('textarea').keypress(function(event) {
         if (event.keyCode == 10 || event.keyCode == 13) {
           event.preventDefault();
         }
      });
      

      【讨论】:

      • @gsamaras 这个应该可以工作fiddle
      猜你喜欢
      • 1970-01-01
      • 2018-04-26
      • 2013-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多