TP Underground Lounge 07/08
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 12.09.2007, 22:20   #1
TP-Supporter
 
Benutzerbild von Spin
 
Registriert seit: Sep 2002
Ort: Zürich
Spin macht alles soweit korrekt

Javascript Funktion beenden und Submit stoppen


Hallo zusammen

Habe folgendes Problem. Habe einen Submit Button der folgend JS Funktion aufruft:

PHP-Code:
function send(url,verarbeiten) {
    
//Anzahl selektierter Boxen holen
    
wert_checkbox=document.getElementsByName("checked_boxes");
    
    if((
verarbeiten == 'yes') && (wert_checkbox == 0)){
    var 
box=window.confirm("Achtung es sind keine Artikel selektioniert.\nAlle Artikel werden ignoriert. Ist das beabsichtigt?")
        if(
box==true){ 
            
//Möchte ich Submit durchführen
                        

        if(
box==false){ 
            
//Will ich Submit abbrechen Funktion beenden
            
            
}
    }

weiterer JS CODE 
Der Aufruf der Funktion aus PHP sieht so aus:
PHP-Code:
<input class="import" type="submit" name="import" value="verarbeiten" onClick="send('<?php echo $url_string?>','yes')"/>
Für den Fall das wert_checkbox=0 ist und die Cofirm mit abbrechen weggeklickt wurde möchte ich die Funktion verlassen und den Submit verhindern. Sonst soll normal in der Funktion weitergefahren werden.

Kann ich denn Submit noch stoppen oder muss ich meinen Submit zu einem normalen Button machen und den Submit erst am Ende der Funktion in JS durchführen?

Danke für eure Hilfe

Gruss: Spin
Spin ist offline   Mit Zitat antworten


Alt 12.09.2007, 23:09   #2
TP-Specialist
 
Benutzerbild von rewboss
 
Registriert seit: Mar 2005
Ort: Unterfranken
rewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKE
Ja, das kannst du.

Der onclick-Handler muss den Wert false zurückgeben, wenn das Abschicken abgebrochen werden soll. Zwei Änderungen sind nötig:

1. Im <input>-Tag musst du den onclick-Handler mit return ergänzen, und zwar so:
Code:
onclick="return send('<?php echo $url_string; ?>','yes')"
Das bedeutet, dass onclick den Wert weitergibt, was send() ausgegeben hat. Ist dieser Wert false, wird das Formular nicht abgeschickt.

2. Natürlich müssen wir die Funktion send() so ändern, dass sie true oder false zurückgibt. Das geht ebenfalls mit return. Da die Variable box schon entweder true oder false ist, brauchen wir die if-Bedingungen auch nicht mehr. Das hießt, diesen Code:
Code:
if(box==true){ 
 //Möchte ich Submit durchführen
} 
if(box==false){ 
 //Will ich Submit abbrechen Funktion beenden
}
ersetzt du mit dieser einfachen Zeile:
Code:
return box;
Das war's.
rewboss ist offline   Mit Zitat antworten
Alt 12.09.2007, 23:12   #3
TP-Specialist
 
Benutzerbild von rewboss
 
Registriert seit: Mar 2005
Ort: Unterfranken
rewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKErewboss ist ein richtiges Arbeitstier - DANKE
Nachtrag: Eigentlich brauchst du die Variable box auch nicht -- du kannst direkt den Wert, der confirm() ausgibt, verwenden, und zwar so:
Code:
return confirm("Achtung es sind keine (usw usw)");
rewboss ist offline   Mit Zitat antworten
Alt 12.09.2007, 23:34   #4
TP-Supporter
 
Benutzerbild von Spin
 
Registriert seit: Sep 2002
Ort: Zürich
Spin macht alles soweit korrekt

Return true


Hallo

Hey das war ein super Typ!!! Es funktioniert!!!! Cool

Danke viel mal

So siehts nun aus:
PHP-Code:
function send(url,verarbeiten) {
    
//Anzahl selektierter Boxen holen
    
wert_checkbox=document.form.checked_boxes.value;
    
         if((
verarbeiten == 'yes') && (wert_checkbox == 0)){
              
box=window.confirm("Achtung es sind keine Artikel 
                       selektioniert.\nAlle Artikel werden ignoriert. Ist das 
                       beabsichtigt?"
)

              if(
box==true){
                   
document.forms['form'].action url;
                   return 
box;
                   } 
              if(
box==false){ 
                   return 
box;
                    }
              }

            
val url;
            
trennPos val.indexOf("&"0);
            
trennPos1 trennPos-7
            seite 
val.substr(7trennPos1);
         
            if((
seite == '1') && (wert_checkbox != 0)) {
        
document.forms['form'].action url;
                 return 
true;
            } 
            else {
          if(
wert_checkbox != 0){
                       
document.forms['form'].action url;
               return 
true;
               }
              } 

Gruss aus Zürich: Spin
Spin ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > HTML Puristen > Javascript
Javascript Funktion beenden und Submit stoppen Javascript Funktion beenden und Submit stoppen
« Erfahrung mit SPAMSPAN ... Spamverhinderer? | Selbe Zelle anderen Inhalt anzeigen »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 06:51 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67