表单的jquery代码在输入密钥和没有页面刷新时提交

时间:2012-12-17 22:41:11

标签: jquery

我正在尝试做类似facebook上发生的事情。我需要为我的博客制作它。 下面给出的代码的问题是它没有响应回车键,因此没有进一步的执行。但是当我只使用没有ajaxForm函数的回车键检查代码时,它会响应。

代码:

$('#msg').keypress(function(e){
   if (e.keyCode == 13 && !e.shiftKey) {
      //checking for enter key as well as shift+enter
      $(document).ready(function() { 
         $('#form1').ajaxForm(function() {
            //for from id=form1 submitting without refreshing the page
            $('#msg').val(''); //clearing out the textarea with id=msg
           //loading fetchposts.php in id=display with new posts
            $("#displaychat").load("fetchposts.php")
         }); 
      }); 
   }
});​

简而言之,我想要的是当按下回车键时,表单会被提交并显示新的结果,而不会刷新页面。

1 个答案:

答案 0 :(得分:0)

你的keypress监听器中有一个不必要的document.ready函数

在我的代码中,我将keypress侦听器附加到body元素。那应该是诀窍

$('body').keypress(function(e) {
    if (e.keyCode == 13 && !e.shiftKey) {
        $('#form1').ajaxForm(function() { 
            $('#msg').val(''); 
            $("#displaychat").load("fetchposts.php") 
        });
    }
});​