2012-11-25 10 views

Antwort

22

Sie können diese spezielle Eingabe Ziel durch eine ID ihm hinzufügen und einfach das KeyDown-Ereignis zu entfernen für wie so ein:

JS

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

Sie können nicht das 'Return false' wollen. @See http://fuelyourcoding.com/jquery-events-stop-misusing-return-false/ – Snekse

+1

Vielleicht möchte @paganotti die Eingabetaste drücken, um das Formular an anderen Eingaben zu senden und die Tag-Eingabe nur zu ignorieren. – hieund

3

Die erste Antwort nicht für mich gearbeitet , vielleicht wegen der Aktualisierung des typeahead plugins, aber ich habe das Problem mit der 'alternativen' Eingabe bestanden, die von typehead erzeugt wurde:

2

Nach den documentation, können Sie die Option confirmKeys auf etwas anderes als Rückkehr (13):

$('input').tagsinput({ 
    confirmKeys: [188, 32, 39], 
}); 

jedoch ein intelligenter Weg, um darüber zu gehen, ist zu prevent sending the form on enter.

1

Der beste Weg, den ich gefunden habe, ist eine Submit-Eingabe zu verwenden. Verwenden Sie stattdessen eine Tasteneingabe und fügen Sie einige js hinzu, um das Formular beim Klicken zu senden.

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