我的Ajax聊天有一个输入字段,该字段应在Enter press上发送数据。

$("#chatfield").keypress(function(e) {
if(e.which == 13) {
   chatsend($('#chatfield').val());
}
});


上面的代码只行不通

$(document).keypress(function(e) {
if(e.which == 13) {
   chatsend($('#chatfield').val());
}
});


但是我不希望代码监听整个文档的按键事件。

尽管输入字段未包装在表单元素中,但它具有ID。

最佳答案

简短的答案是委托。

$(document).on('keypress', '#chatfield', function(e) {
   if(e.which == 13) {
      chatsend($('#chatfield').val());
   }
});

09-15 11:55