[JavaScript] aus einem Form heraus mehrere Seiten ansteuern

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [JavaScript] aus einem Form heraus mehrere Seiten ansteuern

    Hallo Zusammen!

    Ich habe mittels HTML und PHP eine Seite erstellt, auf der ich mittels mehrerer Buttons verschiedene Seiten ansteuern will. Einige
    der Buttons und die Checkboxen sind mittels PHP dynamisch erstellt worden.
    JavaScript soll überprüfen ob eine der Checkboxen gesetz ist und wenn button1gesetzt ist, mittels eines window.confirm
    nochmal nachfragen, ob wirklich alles abgeschickt werden soll.
    Die dynamisch generierten Buttons sollen ein neues Fenster öffnen, welches wieder Informationen zu den mit den einzelnen Buttons
    zusammenhängenden Datensätzen mit PHP darstellt.
    Das funktioniert soweit auch alles bis auf folgende Probleme:

    Ist keine Checkbox ausgewählt und ich button1 drücke, wird nach dem alert die Seite neu geladen.(was er nicht tun soll)
    Klicke ich auf einen der dxnamisch generierten buttons, öffnet er das neue Fenster mit Seite1 und stellt auch alles einwandfrei dar....
    das macht er dann aber auch wenn ich danach auf button1 klicke und dann soll er ja Seite2 öffnen.
    Desweiteren bin ich was JavaScript angeht ne ziemliche Flasche und kann mir nicht mehr selbst helfen.
    Mittlerweile sitz ich schon 2 volle Tage an diesem Problem und werd solangsam GAGA.
    Hoffentlich kann mir jemand helfen.

    Hier der Quellcode:
    (Das Form ist gekürzt... wäre sonst zuviel des guten )
    Code:
    <form name=\"allang\" onsubmit=\"return checkbox()\">
    
    <input type=\"submit\" value=\"abschicken\" name=\"button1\" 
    onClick=\"checkbox(this.name)\">
    
     <input type=\"submit\" name=\"pos" .$i ."\" value=\"" .$numberbp ."\" class=\"button\" 
    onClick=\"this.form.target='blank';this.form.action='bewertungenp.php';this.form.method='post';\">       
    // ein dynamisch generierter button
    
            <script language=\"JavaScript\">
    
            function checkbox(button)
            {
              checked = true;
              anz = " .$total .";
              
              if(anz > 15)
              {
                      anz = \"15\";
              }
    
              if(button==\"button1\")  //prüfen ob button1 gesetzt ist
              {
                a=0;
                   
                for (i=1; i<=(anz) ; i++ )// prüfen ob eine der dynamisch generierten Checkboxen gesetzt ist
                {                                                                
                  feld1=eval(\"document.all.check\"+i);
    
                  if (feld1.checked == true) //wenn checkbox gesetzt ist, a auf 1 setzen
                  {
                    a=1;
                  }
                }
    
                if(a<1)
                 {
                  alert('Bitte wählen Sie eine Checkbox aus!');
                  checked = false;
                }
    
                if(checked == true)
                {
                    text = \"wirklich weiter?\";
                    box = window.confirm(text);
                                                                          
                    if(box == true)
                    {
                      document.allang.target = \"main\";
                      document.allang.method = \"post\";
                      document.allang.action = \"seite2.php\";
                      checked = true;
                    }
                    else
                    {
                      checked = false;
                    }
                }
              }
              return checked;
            }
            </script>

    Danke im Voraus,
    Boiorix

  • #2
    1. bitte lesen: http://www.php-resource.de/forum/sho...threadid=50455 und ändern dass man beim Lesen nicht scrollen muss

    2. was sollen denn die \" im Code?, bitte den Code was im Browser ankommt posten, denn sonst, kann man dir schlecht helfen, weil man nicht genau weiss, was los ist.

    Kommentar


    • #3
      schon das, was im titel steht, kann man nur mit "pfui, finger weg, bleiben lassen" beantworten.

      formulare in HTML haben ein definiertes ziel.
      wenn da in abhängigkeit von den daten unterschiedliche funktionalitäten ausgelöst werden sollen, ist es sache des empfangenden serverseitigen scriptes, dies zu entscheiden.


      (und wenn dann im code auch noch eval() auftaucht, ist gleich doppelt pfui.)
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar

      Lädt...
      X