Ankündigung

Einklappen
Keine Ankündigung bisher.

php Array in Javascript ausgeben

Einklappen

Neue Werbung 2019

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

  • php Array in Javascript ausgeben

    Hallo zusammen,

    Irgendwie bringe ich es einfach nicht fertig ein php Array in Javascript auszugeben.

    PHP-Code:
    <form name="user_form">
    <? while(x<=5){ ?>
    <input type="text" name="hallo[<?php echo $x?>]">
    <? x++; } ?>
    </input><input type="submit" name="go" value="Speichern" onClick='path();'>
    Code:
    function path(){
    
    while (i<=5)
     {
    alert(window.document.getElementsByName('hallo')[i]);
    }
    
    }
    Der alert gibt immer 'undefined' aus.

    Wo liegt der Fehler?
    Vielen Dank für Hilfe

    Gruss
    Angins


  • #2
    Nimm id statt name und verwende getElementById()
    Code:
    function path() {
      while (i<=5) {
        obj_id = 'hallo' + i;
        alert(document.getElementById(obj_id).xxx);
      }
    }
    für xxx mußt Du natürlich die entsprechende Eigenschaft angeben, die ausgegeben werden soll. z.B.:
    alert(document.getElementById(obj_id).name);
    Competence-Center -> Enjoy the Informatrix
    PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

    Kommentar


    • #3
      Ah super danke vielmal, dir ist aber auch noch ein Fehler eingeschlichen.
      Die Klammern müssen noch hinzugefügt werden:

      Code:
      obj_id = 'hallo[' + i + ']';

      Kommentar


      • #4
        Nein, eben nicht. IDs sind keine Names
        --

        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
        Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


        --

        Kommentar


        • #5
          Wenn Du die ID's in der Form richtig setzt, paßt das schon...
          Competence-Center -> Enjoy the Informatrix
          PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

          Kommentar


          • #6
            IDs mit klammern? Na ob das Browserübergreifend unterstützt wird?
            --

            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
            Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


            --

            Kommentar


            • #7
              Neee... Damit meinte ich ihn!
              Er soll die ID's vernünftig setzen, dann läuft das so, wie oben angegeben.
              Die Klammern aus #3 sind Müll, das hattest Du ja schon gesagt, daher habe ich mir das gespart...
              Competence-Center -> Enjoy the Informatrix
              PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

              Kommentar


              • #8
                Zitat von Angins Beitrag anzeigen
                Code:
                alert(window.document.getElementsByName('hallo')[i]);
                Der alert gibt immer 'undefined' aus.

                Wo liegt der Fehler?
                Natürlich darin, dass du kein Element mit dem Namen "hallo" in deinem Dokument hattest.

                Kommentar


                • #9
                  Er hat glaube ich dieses Beispiel verwendet.
                  Dann ist allerdings das name-Attribut falsch vergeben.
                  Über ID's finde ich trotzdem besser! Checkboxen mögen ne Gruppe bilden, aber mehrere text-Input Felder mit gleichem name-Attribut ???
                  Competence-Center -> Enjoy the Informatrix
                  PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                  Kommentar


                  • #10
                    Zitat von Arne Drews Beitrag anzeigen
                    Checkboxen mögen ne Gruppe bilden, aber mehrere text-Input Felder mit gleichem name-Attribut ???
                    Na ja, wenn er den Index in den eckigen Klammern fortlaufend vergibt, dann ist es ja eben nicht der gleiche Name.

                    Kommentar


                    • #11
                      Dann kannst aber die eckigen Klammern auch gleich ganz weglassen!
                      Die Namen unterscheiden sich ja sowieso anhand der Nummern...

                      Warum komplizierter als nötig?!
                      Competence-Center -> Enjoy the Informatrix
                      PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                      Kommentar


                      • #12
                        Wenn du name="xyz[0]", name="xyz[1]", etc. verwendest - dann bekommst du in PHP in $_GET/$_POST gleich ein Array unter dem Index 'xyz' geliefert, das du dann bequem durchlaufen kannst.

                        Verwendest du hingegen name="xyz0", name="xyz1", ... - dann musst du dir in PHP erst diese Bezeichner selber zusammenbasteln.

                        Kommentar


                        • #13
                          Das is' mir schon klar!
                          Aber bedenkst Du, daß es ihm immer noch um einen alert in JavaScript geht?!
                          Die Werte muß er dann sowieso in ner Schleife zusammenbasteln.
                          Competence-Center -> Enjoy the Informatrix
                          PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                          Kommentar


                          • #14
                            Zitat von Arne Drews Beitrag anzeigen
                            Aber bedenkst Du, daß es ihm immer noch um einen alert in JavaScript geht?!
                            Ich bin mir nicht sicher, ob's darum geht - ob das sein eigentliches Problem ist.
                            Die Werte muß er dann sowieso in ner Schleife zusammenbasteln.
                            Es existieren andere Möglichkeiten, auf Formularfelder zuzugreifen, als nur der Name.

                            Kommentar


                            • #15
                              Eine habe ich ihm bereits in #2 genannt!
                              Competence-Center -> Enjoy the Informatrix
                              PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                              Kommentar

                              Lädt...
                              X