Javascript 空格键在此特定输入字段中不起作用

Javascript 空格键在此特定输入字段中不起作用,javascript,Javascript,您好,我有jQuery UI创建的这些选项卡,我有一个脚本,如果您双击选项卡的标题,它将允许您更改选项卡的名称 一切正常,包括更改选项卡名称等。但是,允许我更改选项卡名称的输入字段不允许空格键工作?我以前从未遇到过这样的事情,所以来这里寻求帮助 下面是我的一段代码,它触发双击以更改标题 HTML: 如前所述,一切正常,但不知何故,空格键被禁用了 感谢Jason Sperske,这里有一把小提琴可以说明这个问题 感谢您的关注。我认为您的问题来自jQuery UI中的一个来源: case $.ui

您好,我有jQuery UI创建的这些选项卡,我有一个脚本,如果您双击选项卡的标题,它将允许您更改选项卡的名称

一切正常,包括更改选项卡名称等。但是,允许我更改选项卡名称的输入字段不允许空格键工作?我以前从未遇到过这样的事情,所以来这里寻求帮助

下面是我的一段代码,它触发双击以更改标题

HTML:

如前所述,一切正常,但不知何故,空格键被禁用了

感谢Jason Sperske,这里有一把小提琴可以说明这个问题


感谢您的关注。

我认为您的问题来自jQuery UI中的一个来源:

case $.ui.keyCode.SPACE:
  // Activate only, no collapsing
  event.preventDefault();
  clearTimeout( this.activating );
  this._activate( selectedIndex );
  return;

简而言之,jQueryUI故意阻止空格键执行任何操作(试图使选项卡的行为更像选项卡,而不像链接)。至于修复方法,您可以在进入选项卡编辑模式时尝试禁用此功能,但我认为这可能会给您带来一些意外行为。

检查您的键盘是否出现故障,因为代码中没有禁用空格键的内容?哈哈…如果我的空格键有问题,你会看到我上面的句子乱七八糟的…好笑…你能提供一个完整的JSFIDLE吗?我可以在这里使用我的空格键:@Oriol-我会,但我不知道怎么做,因为我也加载了jQuery选项卡..说真的,代码中绝对没有任何东西会使空格键被禁用,我们肯定缺少一些东西。那么这是否意味着像我这样进行内联编辑是个坏主意?我认为这是一个很好的UI…我个人喜欢你的方法,但我没有看到其他人这样做,所以我倾向于相信它可能会产生比它所能解决的更多的问题。但我不敢说这是不可能的。在堆栈溢出问题上,有比我聪明得多的人。你可以保持dblclick to edit方法,但让输入显示在模式对话框中(因此不受事件侦听器的约束)是的,如果我没有选择的话…我只是认为双击并编辑选项卡是非常直观的…但是如果jQuery选项卡阻止我这样做,我别无选择…但谢谢你的快速回复和你对这个问题的见解。。。
$( '.tab' ).on( 'dblclick', 'a', function() {
  $( this ).hide();
  $( this ).siblings( '.edit-field' ).show();
} );

$( 'button[name="edit"]' ).click( function() {
   // do stuff here.
} );
case $.ui.keyCode.SPACE:
  // Activate only, no collapsing
  event.preventDefault();
  clearTimeout( this.activating );
  this._activate( selectedIndex );
  return;