Mar*_*ean 5 javascript forms jquery keyboard-events jquery-events
我在表格中有一张桌子.该表包含一些表单字段,但表格外部还有表单字段(但仍在表单中).
我知道Enter和Return传统上用于通过键盘提交表单,但我想为表中的字段停止此行为.例如,如果我将一个字段集中在表中并按Enter/Return,则不会发生任何事情.如果我将一个字段聚焦在表格之外(但仍然在表格内),那么它就像正常一样提交.
我有一个针对此表的jQuery插件.简化,这是我迄今为止尝试过的:
base.on('keydown', function(e) {
if (e.keyCode == 13) {
e.stopPropagation();
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
base表jQuery对象在哪里.这是我的插件的init方法.但是,按Enter键仍会提交表单.
我哪里错了?
编辑:一些简化的HTML:
<form method="" action="">
<input type="text" /><!--this should still submit on Enter-->
<table>
<tbody>
<tr>
<td>
<input type="text" /><!--this should NOT submit on Enter-->
</td>
</tr>
</tbody>
</table>
</form>
Run Code Online (Sandbox Code Playgroud)
base.keypress(function(e) {
var code = e.keyCode || e.which;
if(code == 13)
return false;
});
Run Code Online (Sandbox Code Playgroud)
或仅用于输入:
$(':input', base).keypress(function(e) {
var code = e.keyCode || e.which;
if(code == 13)
return false;
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11079 次 |
| 最近记录: |