2011-08-04 59 views
2

现在我有jQuery的这种流动:提交值回车键

$('input#search').click(function(){ 
     $('textarea#people').fadeIn(); 
     $('input#searchpeople').fadeIn(); 
     $('input#add').hide(); 
     $('input#search').hide(); 
    }); 

$("#searchpeople").click(function(){ 
    var people=$("textarea#people").val(); 
    $.post("searchpeople.php",{people:people},function(result){ 
    $("div.callback").html(result); 
    }); 
    }); 

我简单的问题是,而不必不必点击搜索按钮的用户,该按钮会自动点击时用户按下输入键。

回答

7

你必须做到以下几点...

  1. 在文本框的按键,检查“确认键”(输入的密钥码13 )
  2. 如果是这样,通话按钮,点击功能

Demo can be found here

$('input#search').click(function(){ 
      $('textarea#people').fadeIn(); 
      $('input#searchpeople').fadeIn(); 
      $('input#add').hide(); 
      $('input#search').hide(); 
     }); 
    $('input#search').keypress(function(){ 
     if($(this).keyCode == 13) 
     { 
      Search(); 
     }  
    }); 

    $("#searchpeople").click(Search); 


    function Search() 
    { 
     var people=$("textarea#people").val(); 
     $.post("searchpeople.php",{people:people},function(result){ 
     $("div.callback").html(result); 
     } 
1

,而不是处理点击按键,你可以只使用一个form和处理submit事件:

<form> 
    <textarea id="people"></textarea> 
    <input id="search" type="submit" /> 
</form> 

<script> 
    $('form').submit(function() { 
     // do stuff 
     return false; 
    }); 
</script> 
+0

有没有办法提交当你专注textarea的内 – Gino