[英]How to call JQuery function when blur or press enter?
按Enter或blur()时需要释放文本字段
实际上,当我使用blur()时,我还可以,但是我需要这两件事。
这就是我所拥有的:
* jQuery *
$(document).ready(theMain);
function theMain(){
$("td").blur(ActTable);
function ActTable(){
alert("it works!");
}
}
* HTML *
<table>
<tr><td>myID</td><td>column1</td><td>column2</td></tr>
<tr>
<td>01</td>
<td contenteditable="true" onkeyup="if(event.keyCode==13) ActTable();">text to change</td>
<td contenteditable="true" onkeyup="if(event.keyCode==13) ActTable();">text to change</td>
</tr>
</table>
实际上,此HTML部分调用了该函数,但我需要释放文本字段而不是向下键入空格。 与blur()相同。
对不起,我的英语不好,谢谢。
编辑:当我按Enter键时,我需要释放文本字段,我不知道我的讲话是否正确,但是在该文本字段上按Enter键时,我需要相同的模糊效果。 英语不是我的母语,所以抱歉,如果我说得不好。
您需要使用e.which == 13
if(e.which == 13) {
alert('You pressed enter!');
}
您的代码
$(document).ready(theMain);
function theMain() {
$("td").on('blur', ActTable).on('keypress', function (e) {
if (e.which == 13) {
ActTable();
}
});
function ActTable() {
alert("it works!");
}
}
让我知道这是否可以按您的需要完成工作。
JQUERY:
$(document).ready(function(){
//wire up blur events
$('#myTable').on('blur','[contenteditable=true]',function(){
alert('works');
});
//wire up keyup events
$('#myTable').on('keyup','[contenteditable=true]',function(){
if(event.keyCode==13){
$(this).blur();
}
});
});
HTML上唯一需要的更改是在表格标签HTML上:
<table id="myTable">
Jquery需要在表中选择必需的tds。 同时删除td标签上的onkeyup属性
在这里看看并修改: 小提琴
使用.keyup()方法,并检查event.that是否等于13。因此,您可以编写:
$("#yourIdHere").keyup(function (event) {
if (event.which == 13) {
//use blur on input
$("#yourIdHere").blur();
}
});
编辑
您可以在检查event.which值后调用模糊函数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.