大家好,我有这些由jQuery UI创建的标签,我有一个脚本,如果你双击标签的标题,它将允许你更改标签的名称。
一切正常,包括更改选项卡名称等等。但是,允许我更改选项卡名称的输入字段不允许我的空格键工作?我之前从未遇到过这样的事情,因此来到这里寻求帮助。
以下是我的代码片段,触发双击以更改标题。
HTML:
<li class="tab"><a href="#tab-1" title="Cool">Cool</a><span class="hide edit-field"><input type="text" value="Cool" name="tab_title[]" placeholder="Enter Title" /><button name="edit" type="submit">Done</button></span></li>
JS:
$( '.tab' ).on( 'dblclick', 'a', function() {
$( this ).hide();
$( this ).siblings( '.edit-field' ).show();
} );
$( 'button[name="edit"]' ).click( function() {
// do stuff here.
} );
因此,如前所述,一切正常但只是某种方式空格键被禁用...... ??
感谢Jason Sperske,这是一个说明问题的小提琴。
感谢您的光临。
答案 0 :(得分:0)
我认为您的问题来自jQuery UI中的this line源代码:
case $.ui.keyCode.SPACE:
// Activate only, no collapsing
event.preventDefault();
clearTimeout( this.activating );
this._activate( selectedIndex );
return;
简而言之,jQuery UI有意阻止空格键执行任何操作(试图为标签提供更多类似行为的标签,并且行为不像链接)。至于修复,你可以尝试在进入标签编辑模式时禁用它,但我认为这可能会给你一些意想不到的行为。