warnmeldung bei onclick nur einmal?
Stefan Bartels
- javascript
0 Struppi0 mdkiller0 Stefan Bartels0 wahsaga0 Stefan Bartels
hallo forum!
ich möchte, daß wenn auf den formular-button geklickt wird, eine warnmeldung erscheint. allerdings nur einmal. klickt man ein zweites mal, soll die form-action ganz normal ausgelöst werden.
im formular habe ich ff. eingebaut:
<input type="submit" value="Delete" onclick="return warn_delete()">
das javascript:
function warn_delete()
{
var flag;
flag=1;
if(flag=='1'){
alert("Warnung...");
return true;
flag=2;
}
}
mir ist klar, daß bei jedem funktionsaufruf die variabel "flag" wieder auf "1" gesetzt wird. wie kann ich es anstellen, daß sie einen anderen wert annimmt, sodaß der zweite klick normal "durchläuft"?
gruß, stefan
hallo forum!
ich möchte, daß wenn auf den formular-button geklickt wird, eine warnmeldung erscheint. allerdings nur einmal. klickt man ein zweites mal, soll die form-action ganz normal ausgelöst werden.
im formular habe ich ff. eingebaut:
<input type="submit" value="Delete" onclick="return warn_delete()">
vielleicht besser im onsubmit event des Formulars.
<form .... onsubmit="return warn_delete()">
das javascript:
var flag = false;
function warn_delete()
{
if(!flag){
alert("Warnung...");
flag= true;
return true;
}
return false;
}
Struppi.
hallo forum!
Hi Stefan!
function warn_delete()
{
var flag;
flag=1;
if(flag=='1'){
alert("Warnung...");
return true;
flag=2;
}
}
Setze
var flag=1;
vor die Funktion
also:
var flag=1;
function warn_delete(){
if(flag=='1'){
alert("Warnung...");
return true;
flag=2;
}
}
Wäre eine Bestätigung denn nicht besser als eine Warnung?
Gruß
mdkiller
hallo!
leider geht´s noch nicht wie gewünscht ;-(
@ mdkiller: danke, die warnmeldung erscheint zwar, aber die form--action wird trotzdem ausgelöst. nun ja, dann brauche ich keine warnung mehr...
@ Struppi: auch dir herzlichen dank, aber bei deinem lösungsansatz wird keine meldung ausgegeben und die form-action einfach so ausgelöst.
wäre schön, wenn mir doch noch geholfen wird.
danke & gruß,
stefan
Hallo,
damit ein Formular nicht ausgeführt wird musst du innerhalb der funktion
return false;
verbauen. Allerdings musst du dies ebenfalls in deine Entscheidung einbauen, da dies ja nur das erste mal so sein soll...
http://selfhtml.teamone.de/javascript/sprache/eventhandler.htm#onsubmit
Odium
hi,
@ mdkiller: danke, die warnmeldung erscheint zwar, aber die form--action wird trotzdem ausgelöst. nun ja, dann brauche ich keine warnung mehr...
hast du denn au8ch onsubmit im form-tag zum auslösen der funktion benutzt, wie dir vorgeschlagen wurde?
gruss,
wahsaga
hallo!
leider geht´s noch nicht wie gewünscht ;-(
@ mdkiller: danke, die warnmeldung erscheint zwar, aber die form--action wird trotzdem ausgelöst. nun ja, dann brauche ich keine warnung mehr...
Deshalb meinte ich ja, kein alert, sonder vielleicht eher http://selfhtml.teamone.de/javascript/objekte/window.htm#confirm
wäre schön, wenn mir doch noch geholfen wird.
Wäre schön, wenns hilft
danke & gruß,
stefan
bitte &gruß
mdkiller
@ Struppi: auch dir herzlichen dank, aber bei deinem lösungsansatz wird keine meldung ausgegeben und die form-action einfach so ausgelöst.
Oh ich hatte da was vertauscht, der onsubmit Handler wird ausgeführt, wenn er ein true zurückgibt und nicht bei einem false.
Also nochmal:
Das Formular:
<form .... onsubmit="return warn_delete()">
...
</form>
<script type="text/javascript">
var flag = false;
function warn_delete()
{
if(!flag){
alert("Warnung...");
flag = true;
return false;
}
return true;
}
Struppi.
hi,
flag=1;
if(flag=='1'){
btw: wenn du flag einen integer-wert zuweist, wieso fragst du dann auf einen string ab?
gruss,
wahsaga
danke euch recht herzlich, es funktioniert nun (sogar auf zwei versch. arten).
gruss, stefan