2012-11-25 8 views

Odpowiedz

22

można kierować tego konkretnego wejścia dodając identyfikator do niego i po prostu usunięcie zdarzenia keydown dla wpisać tak:

JS

$(document).ready(function() { 
    $('form input').keydown(function(event){ 
    if(event.keyCode == 13) { 
     event.preventDefault(); 
     return false; 
    } 
    }); 
}); 
+2

Możesz nie chcieć 'return false'. @Zobacz http://fuelyourcoding.com/jquery-events-stop-misusing-return-false/ – Snekse

+1

Może @paganotti chce nacisnąć klawisz Enter, aby przesłać formularz na inne dane wejściowe i zignorować tylko dane wejściowe tagu. – hieund

3

pierwsza odpowiedź nie pracował dla mnie , być może z powodu aktualizacji wtyczki typeahead, ale przekazałem problem, korzystając z "alternatywnego" wejścia utworzonego przez typ:

$(".twitter-typeahead > input").focus(function(){ 
    //disable btn when focusing the input 
    $("#my_submit_button").prop('disabled', true); 
}).blur(function(){ 
    //enable btn when bluring the input 
    $("#my_submit_button").prop('disabled', false); 
}); 
1

Najlepszym sposobem, w jaki znalazłem podejście, nie jest użycie wejścia przesłanego. Zamiast tego użyj przycisku wprowadzania i dodaj js, aby przesłać formularz po kliknięciu.

$('#my_submit_button').click(function(){ 
    $(this).parents('form').submit(); 
}); 
Powiązane problemy