Hallo,
- Beim klicken auf löschen soll eine Abfrage erscheinen wirklich löschen
- Wenn selbige mit ja beantwortet wird soll die Aktion ausgeführt werden also das Formular an die seite delete_user gesendet werden die dann das SQL Statement absetzt und eine BEstätigung zurück gibt.
- Wenn Abbrechen gewählt wird soll nichts passieren und man bleibt im selben Formular
<a href="delete-Adresse" onclick="return Check()">Löschen</a>
<script type="text/javascript">
function Check () {
var ergebnis = window.prompt("Wollen Sie wirklich löschen?");
return ergebnis;
}
</script>
Erklärung:
Bei onclick wird Check ausgeführt, soweit klar. Die Funktion ruft prompt auf, der Rückgabewert wird in der Variable ergebnis gespeichert. Da steht false drin, wenn der User Abbrechen gewählt hat oder true, wenn er OK gewählt hat. Die Funktion Check gibt dann die Variable mit true oder false zurück. Im onclick-Attribut wird nun der zurückgegebene Wert nochmal »zurückgegeben«. return hat in dem Zusammenhang eine spezielle Bedeutung. onclick="return false;" führt dazu, dass das click-Ereignis nicht weiter behandelt wird. Genauer gesagt wird die Standard-Ereignisbehandlung verhindert. Wenn bei einem Link ein click-Ereignis eintritt, dann behandelt der Browser dieses Ereignis standardmäßig, indem das Linkziel annavigiert wird. Das wird durch return false verhindert. (<a href="..." onclick="return false">...</a> wäre also ein Link, bei dem überhaupt nichts passiert, wenn darauf geklickt wird.) Je nachdem, was Check also zurückgibt, steht da letztlich onclick="return true" oder onclick="return false". Im ersteren Fall wird der Link ganz normal ausgeführt und die Lösch-Seite aufgerufen, im zweiten Fall passiert einfach nichts.
Mathias