2017-01-12 7 views
0

Ich habe eine Bearbeitungsseite in meiner CakePHP-3.0-Anwendung, Die Werte in den Textfeldern werden aus der Datenbank geladen.Javascript zum Ermitteln des Wertes von Text in einem Textfeld

Ich möchte ein Ereignis auslösen und eine alert anzeigen, wenn der Wert in einem der Textfelder von ihrem aktuellen Wert geändert wird. Angenommen, der Wert ist "abc". Ein alert sollte angezeigt werden, wenn es zu "abcde" geändert wird. Ein alert wird nicht angezeigt Wert ist immer noch "abc".

Derzeit bin ich dies aber es wird die Funktion aufrufen ich auf das Textfeld selbst angeklickt:

<input size="10" type="text" value="13-12-1899" onchange="checkChange()" style="border:1px solid #fff;"> 
+0

'Das wird aber rufen Sie die Funktion, die ich auf das Textfeld geklickt itself' Nicht wahr - es heißt, wenn der Eingang den Fokus verliert. Daher sollte der Code, den Sie jetzt haben, genau so funktionieren, wie Sie Ihre Anforderungen beschreiben. –

+0

Wo ist die Definition für checkChange()? –

+0

Ich bekomme das Problem nicht 100%. Möchten Sie die Warnung sofort nach dem Ändern der Eingabe erhalten? Wenn ja, dann sollte Ihr Code in Ordnung sein. Oder Sie haben so etwas wie eine Schaltfläche zum Senden, und Sie möchten alle Warnungen für jede Eingabe erhalten? – Alan

Antwort

0

, wenn Sie Änderungen fangen wollen, WIE SIE anstatt passieren, wenn der Eingabefokus verliert, dies versuchen:

$("#checkme").on("input", function(){ 
 
    var myVal = $(this).val(); 
 
    console.log("changed to "+myVal+"!"); 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="text" value="abc" id="checkme" >

0

HTML

<input size="10" type="text" value="13-12-1899" onchange="checkChange()" style="border:1px solid #fff;"> 

Javascript

<script type="text/javascript"> 
    function checkChange(e){ 
     var oldVal = e.getAttribute('value'); 
     var nwVal = e.value; 
     if(oldVal!=nwVal) 
      alert("the value \""+oldVal+"\" have been changed to \""+nwVal+"\""); 
    } 
</script> 
Verwandte Themen