我正在尝试在某人输入某些信息后发送信息,如果有人通过点击其他地方离开,或者标记出来,则会发送信息....但是当按Enter键时,它会断开并转到下一行。我正试图阻止这一点,当他们按下回车时就离开盒子。
代码:
$('.username').blur(function(){
if (username != $(this).text()) {
$.ajax({
type: 'POST',
url: 'usernameChange',
data: { username: username, id: id }
}).done(function(msg){
console.log('Okay, new username is ' + msg);
});
}
});
如何检查是否有人按回车离开......
<span class="username" contenteditable="true">Nasus</span>
答案 0 :(得分:3)
你必须处理keydown事件,当有人按下Enter键时失去对contentEditable的关注,这样你也可以防止换行。
$(".username").on("keydown",function(e){
var key = e.keyCode || e.charCode; // ie||others
if(key == 13) // if enter key is pressed
$(this).blur(); // lose focus
});