2016-07-19 11 views
0

Below Schlüssel eingeben ist mein Codemehrere Zeit Form Prevent einreichen mit

$('#myDIV').keydown(function (event) { 
     var key=event.which || event.charCode; 
     if(key == 13) // the enter key code 
     { 
     event.preventDefault(); 
     importItem(); 
     } 
}); 

Wenn ich die ENTER-Taste mehrmals die importItem() wird immer mehrmals aufgerufen, wie kann ich das verhindern? Ich habe hier keine Funktion, um die gesendete Art von Code zu verwenden.

+1

Sie dieses 'var checker versuchen = true; $ ('# myDiv') keydown (function (event) { \t var key = event.which || event.charCode;. \t if (checker) { \t \t if (Taste == 13) // die Schlüsselcode \t \t {; \t \t \t importItem();; \t \t \t checker = false \t \t \t \t \t Event.preventDefault()} eingeben} }); ' – guradio

+0

es erlaubt mir nicht, Enter-Taste zweites Mal für anderes Formular ohne Aktualisierung der Seite –

+0

Click Event zu verwenden? Du meinst Keydown Event? –

Antwort

0

Verwenden Sie setTimeout(), um die mehrfache Ausführung von Code zu verzögern und zu verhindern.

var timeout = null; 
    $('#myDIV').keydown(function (event) { 
      var key=event.which || event.charCode; 
      if(key == 13) // the enter key code 
      { 
      event.preventDefault(); 
      if(timeout != null){ 
       clearTimeout(timeout); 
       timeout = null; 
      } 
      timeout = setTimeout(function(){ 
       importItem(); 
      }, 1000); 
      } 
    }); 
+0

Ich habe die Eingabetaste gedrückt, während das Formular mit der Lücke eingereicht wurde, dann wurde es mehrmals erneut gesendet. –

+0

Sie möchten also die Einreichung beenden, bevor eine andere Eingabetaste erlaubt ist? –

+0

ja genau, nachdem ein Formular eingereicht wurde dann nur ich möchte die Taste erneut drücken nach dem Drücken –

0
// Define a global flag 
allowSubmit = true 

// And in your custom submit event function 
if allowSubmit 
    $('#yourForm').submit() #Fire native submit function manually here 
    allowSubmit = false 
else 
    return false 
Verwandte Themen