【问题标题】:Selectively enable enter key in HTML textarea (javascript)有选择地启用 HTML 文本区域中的输入键(javascript)
【发布时间】:2009-08-23 19:57:58
【问题描述】:

我正在使用 openjs.com 的快捷方式处理 (1) 在我的 html 表单中禁用回车键。但是,在这些表单中的 textareas 内部,我想输入键来发出正常的 CR-LF 对(因为这是用户所期望的)。

目前假设我的表单/输入结构如下:

<form id="f1">
 <fieldset>
  <input>
  <textarea id="f2"> ...

运行以下脚本:

shortcut.add('Return',  function () { /*empty*/   },
 { 'type':'keydown', 'disable_in_input':false,'propagate':true,  
   'target':document.getElementById('f1')});"

这有效地禁用了回车键。

我尝试使用以下代码为 textarea 重新启用它:

shortcut.add(\"Enter\", function() { }, {'type':'keydown','propagate':false,
'disable_in_input':false, 'target':document.getElementById('f2') } );  

但这不起作用。这个事件的传播顺序是什么?它应该从文本区域冒泡还是从表单元素冒泡?

【问题讨论】:

    标签: javascript html textarea shortcut


    【解决方案1】:

    看起来这个库并不是真的要以这种方式使用。我会大胆猜测,添加任何快捷方式都会完全禁用浏览器对其的处理,无论您之后做什么。

    您实际上想要完成什么?如果你只是想阻止表单被提交,你可以为调用event.preventDefault()的整个表单添加一个submitevent listener

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多