Confirm-Message in Verbindung mit einem Link
Anja
- javascript
Hallo zusammen,
ich habe folgendes Problem:
Wenn ein Anwender auf einen Link klickt soll eine JavaScript confirm-message angezeigt werden. Klickt der Anwender auf "Cancel", soll die neue Datei nicht geladen werden.
Wie kann ich so was umsetzen?
Ich habe folgendes probiert: wenn auf "Cancel" geklickt wird, setze ich den "href" von dem Link auf "javascript:void(-1)". Dadurch wird der Link nicht geladen. Wenn der Anwender aber nun nochmal auf den Link klickt und dann in der confirmation-Box auf "Ok" wird der Link trotzdem nicht geladen weil das "href" nun immer noch auf "javascript:void(-1)" ist.
Kann mir hier jemand weiterhelfen?
Danke im Voraus
Grüssle
Anja
Hi,
versuch's mit
onClick="javascript:return(confirm('Link folgen?'))"
Gruesse,
Lynky
Hi
onClick="javascript:return(confirm('Link folgen?'))"
Bitte nicht. "javascript:" hat _nichts_ im onclick verloren.
Gruesse, Joachim
Hi,
Wenn ein Anwender auf einen Link klickt soll eine JavaScript confirm-message angezeigt werden. Klickt der Anwender auf "Cancel", soll die neue Datei nicht geladen werden.
im link: href="deine_url" onclick="return do_confirm()" ...
function do_confirm () {
return confirm("Wolle mer se rinlosse?");
}
Gruesse Joachim
im link: href="deine_url" onclick="return do_confirm()" ...
function do_confirm () {
return confirm("Wolle mer se rinlosse?");
}
Das ist ne gute Idee.
Danke.
Allerdings habe ich bereits im onClick einen Funktionsaufruf, deren Funktion ich auch nicht erweitern kann/darf.
würde dann folgendes gehen:
onclick="return do_confirm(); return meineFunktion()"
Gruss Anja
onclick="return do_confirm(); return meineFunktion()"
ne, das geht nicht, nach dem ersten return wird der returnwert von "confirm()" im eventhandler zurueckgegeben und "meineFunktion()" ueberhaupt nicht erst aufgerufen.
musst wohl dann auf meinefunktion() verzichten oder die irgendwie in "do_confirm ()" einbauen ;)
Lynky
hi,
onclick="return do_confirm(); return meineFunktion()"
ne, das geht nicht, nach dem ersten return wird der returnwert von "confirm()" im eventhandler zurueckgegeben und "meineFunktion()" ueberhaupt nicht erst aufgerufen.
wenn beide funktionen einen true/false-wert zurückliefern, kann man ja auch beide funktionen aufrufen, und deren rückgabewerte logisch per AND oder OR verknüpft zurückgeben:
onclick="return (meineFunktion() && do_confirm());"
bzw.
onclick="return (meineFunktion() || do_confirm());"
in ersterem fall wäre darauf zu achten, dass do_confirm wohl gar nicht mehr aufgerufen würde, wenn schon von meineFunktion ein false zurücgegeben wurde.
gruß,
wahsaga
Moin!
onclick="return (meineFunktion() && do_confirm());"
bzw.
onclick="return (meineFunktion() || do_confirm());"in ersterem fall wäre darauf zu achten, dass do_confirm wohl gar nicht mehr aufgerufen würde, wenn schon von meineFunktion ein false zurücgegeben wurde.
Und im letzteren Fall würde do_confirm nicht mehr aufgerufen, wenn meineFunktion() true zurückgibt.
Hach, short circuit evaluation ist schon was tolles. :)
- Sven Rautenberg
hi,
Und im letzteren Fall würde do_confirm nicht mehr aufgerufen, wenn meineFunktion() true zurückgibt.
stimmt, das ist natürlich die nur logische konsequenz in entgegensetzter richtung.
gruß,
wahsaga