当我在 javascript 中按 Tab 键时如何调用函数
How to call function when I press tab key in javascript?
我有一个这样的函数:
function whenEmpty(field) {
if (field.value == '') {
field.style.backgroundColor = "#ffcccc";
alert("Please fill the field.");
field.focus();
} else {
field.style.backgroundColor = "#ffff80";
}
}
在我想到这个想法之前(我想在按下 Tab 键时调用这个函数。我在属性 onblur 上调用该函数。
<tr>
<td>
<div class="required">
<label>Phone</label>
</div>
</td>
<td>
<form:input path="connote.destPhone" id="destPhone" htmlEscape="true" onfocus="this.select();" onmouseup="return false;" onblur="whenEmpty(this);" style="background-color:#ffff80" size="20" maxlength="50" tabindex="9" />
<form:errors path="connote.destPhone" cssClass="error" />
</td>
</tr>
但是现在我只想在按 tab 键时才调用该函数。
您可以像这样向文档添加事件侦听器。
document.addEventListener('keyup', function(event) {
if (event.keyCode == 9) {
whenEmpty();
}
});
这将侦听任何键启动(键盘按钮释放)事件,然后在 if 中检查按下按钮的键代码是什么。 9 是 Tab 键代码。如果要将字段传递给函数,还可以将事件侦听器添加到输入本身。然后使用 event.target 访问它
您可以在
正文上添加键控监听器,也可以在表上添加侦听器(只需添加tabindex属性)
// event listener for keyup
function checkTabPress(e) {
if (e.keyCode == 9) {
//call your function whenEmpty()
}
}
var body = document.querySelector('body');
body.addEventListener('keyup', checkTabPress);
相关文章:
- 如何使jQuery插件函数可调用以供独立使用,而不在集合上操作
- D3在一个调用中绘制不同的SVG形状,没有可见性
- 如何从Java/scala调用js美化程序
- 如何调用这个匿名 JavaScript 函数
- 如何从模块链中调用函数.导出到节点中
- 我需要从php调用javascript或jquery
- Chrome开发工具(如何知道我在调用哪个javascript对象)
- 单击按钮后如何逐个调用分区,上一个分区将隐藏
- 多个AJAX调用调用相同的成功函数不起作用
- 补间.js添加事件侦听器后不调用调用函数
- 使用函数调用调用 jQuery 弹出窗口
- 如何使用 jquery Ajax 调用调用类的方法
- jQuery从不为ajax调用调用.done()或.always()
- 使用angular js-ajax调用调用php-json服务文件
- 手动调用模块与使用browserify动态调用模块有何不同?
- 通过javascript调用调用jsp页面
- Angular Service可以在控制器中调用调用该服务的函数吗?
- 在jquery中从ajax调用调用Javascript函数
- 有没有一种安全的方法可以调用“调用”来调用 JavaScript 中的函数
- 在rails 3中,如何使用page.调用调用函数并向其传递多个参数