onclick-Ereignis wird nicht ausgelöst, wenn onchange unmittelbar zuvor ausgelöst wurde

Ich habe hier ein lustiges Problem.

Ich habe ein Textfeld mit einem damit verknüpften onchange-Ereignis. Dann habe ich einen Knopf, der mit einem onclick Ereignis verbunden wird.

Der Text, der in das Textfeld gestellt wird, wird verarbeitet, wenn das Ereignis onchange für das Textfeld ausgelöst wird. Dies passiert normalerweise, wenn ich auf etwas außerhalb des Textbereichs klicke.

Was ich tat, war das folgende:

Ich habe einen Text in das Textfeld eingegeben.Gleich nach der Eingabe klicke ich auf die Schaltfläche, um das Ereignis onclick auf die Schaltfläche auszulösenNichts passiert, aber das onchange-Ereignis im Textbereich wurde ausgelöst, als ich auf die Schaltfläche geklickt habe, aber das onclick-Ereignis auf der Schaltfläche selbst wird nicht ausgelöst.

Warum? Ich habe erwartet, dass sowohl onchange als auch onclick ausgelöst werden. Gibt es irgendetwas, was ich tun muss, damit der Klick auf den Button nicht "verloren" geht? Mir wurde klar, dass ich zweimal klicken muss, da der erste Klick eine Änderung im Textbereich verursacht und DANN der zweite Klick einen Klick auf die Schaltfläche auslöst.

Der folgende Code zeigt ein Beispiel. Probieren Sie einfach den folgenden Code aus. Geben Sie einen Text ein und klicken Sie dann direkt auf diese Schaltfläche. Es erscheint nur das Popup "textarea".

<textarea onchange="processText();" name="mytext"></textarea>
<button onclick="processButton();">Hello</button>
<script language="Javascript">
  function processText()
  {
    alert( 'textarea');
  }

  function processButton()
  {
    alert( 'button');
  }
</script>

Antworten auf die Frage(3)

Ihre Antwort auf die Frage