JQuery Formular OnEnter - PullRequest
       3

JQuery Formular OnEnter

2 голосов
/ 23 октября 2010

У меня есть форма с двумя полями ввода, одним текстом и одной кнопкой отправки. Я хочу отправить через jQuery .ajax () без перезагрузки документа. Он работает до тех пор, пока нажата кнопка, но не при нажатии return / enter, тогда он отправляется без методологии ajax Я пробовал onEnter () или onSubmit (), но это тоже не сработало.

Это биты кода:

// HTML

<div id="search_form">
   <form method="POST" action="search.php">
    <input id="search_text" type="text" name="query"/>
    <input id="search_button" type="button" value="send"/>
   </form>
</div>
<div id="results"></div>

// Javascript

jQuery(function(){

$("#search_button").click(function(){
 var query = "query="+$("input[name=query]").val();   

 $.ajax({
      type: "GET",
      url: "request.php",
      data:query,
      cache:false,  
      success: function(result){ 
       $('#results').fadeIn();
      },
      error:function(xhr,err){
      alert("readyState: "+xhr.readyState+"\nstatus: "+xhr.status);
      alert("responseText: "+xhr.responseText);
   }  
     });
 });
});

1 Ответ

2 голосов
/ 23 октября 2010

Вместо click на кнопке настройте до события submit на <form>, например:

$(function() {   
  $("#myFormId").submit(function() {
    $.ajax({
      type: "GET",
      url: "request.php",
      data: $(this).serialize(),
      cache: false,  
      success: function(result){ 
        $('#results').fadeIn();
      },
      error:function(xhr,err){
        alert("readyState: "+xhr.readyState+"\nstatus: "+xhr.status);
        alert("responseText: "+xhr.responseText);
      }  
    });
    return false;
  });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...