我找到了很多关于如何用tab键替换enter的解决方案,但我需要在输入时模拟标签并输入,请帮助:
我有一个输入字段,然后是一个链接列表(列表由输入过滤)。当我完成输入并按回车键时,我希望第一个链接被“点击”。我假设我能做到这一点的方法是在输入键之前模拟一个tab键,但我该怎么做?
还有其他选择吗?
这就是我所拥有的:
<input type="text" id="search_filter" style="COLOR: #999" onFocus="if (this.value == 'sometext') {this.value=''; this.style.color='#000';}" name="filter" value="someothertext" />
<div id="links">
<ul>
<li><a href="someurl">Link 1</a></li>
<li><a href="someurl">Link 2</a></li>
<li><a href="someurl">And so on</a></li>
</ul>
</div>
谢谢!
答案 0 :(得分:0)
<input type="text" id="input1"/>
<a href="someUrl">Link</a>
<script>
$(function(){
$("#input1").keypress(function(event){
var ENTER = 13;
if ( event.which == ENTER ) {
$(this).next("a").click();
e.preventDeafult();
return false;
}
})
})
</script>
答案 1 :(得分:0)
注意 keypress 和 keydown 之间的区别。 Keypress不会触发某些键。所以这是我使用jQuery和keydown的实现:
editorField.keydown( function(e) {
switch ( e.keyCode ) {
//13 for Enter
case 13:
saveCell();
break;
case 40: //I don't remeber which one of those is 'tab'.
case 9: //The other should be right arrow
cell.parent().next().find('td.value').dblclick();
return false;
break;
default:
break;
}
} );
这是我的内联单元格编辑代码,但希望您能根据自己的需要进行调整。