[JavaScript] dynamisch auf Formularfelder zugreifen



  • Hi,

    ich hab ein kleines Problem!
    Also, ich habe viele verschiedene Input-Felder. Der Name dieser ist zusammengesezt aus der Artikelnummer und einer laufenden Nummer.

    Bsp.: <input type="text" name="artnr1_1" onchange="rechne_tl('artnr1')" value=...
    name="artnr1_2" onchange="rechne_tl('artnr1')" value=...
    name="artnr2_1" onchange="rechne_tl('artnr2')" value=...
    name="artnr2_2" onchange="rechne_tl('artnr2')" value=...

    u.s.w. ingesamt ca.250

    ich möchte eine Summe ausrechnen, die die Gesamtanzahl pro Artikelnummer ausgibt. Dazu möchte ich eine JavaScript-Funktion schreiben, die die Artikelnummer übergeben bekommt und dann automatisch die verschiedenen Inputs zusammenzählt. die Anzahl der laufenden Nummern ist immer gleich.

    <script language="JavaScript">
    function rechne_tl(tnr)
    	{
    	var summe=0*1;
    	summe= summe + document.formular."tnr+'_1'".value*1;
    	summe= summe + document.formular."tnr+'_2'".value*1;
    	alert (summe)		
    	}
    </script>
    

    Diese Funktion tut es nicht!
    Weiß jemand, wie ich, wenn ich einen Teil des Namens übergeben bekomme, auf die Eigenschaft des Inputs komme?



  • Versuch's mal so:

    <script language="JavaScript"> 
    function rechne_tl(tnr) 
    { 
     var summe = 0; 
     for(i = 0; i < 5; i++) {
      summe += Number(document.Formular.elements[tnr+'_'+i].value);
     }
     alert (summe)         
    } 
    </script>
    


  • Hi,

    das ging ja echt SUUUUUUUUUUUUUUUPER schnell in diesem Forum.
    Habs mal ausprobiert und funtioniert ja wirklich einwandfrei.

    Besten Dank.
    MG


Anmelden zum Antworten