Lynnv: Variable in Javascript übergeben bei dynamischen Inputfeldern

Beitrag lesen

Hallo Rolf,

leider nicht alles klar.

Ich habe jetzt dieses fieldset eingebaut, aber jetzt kommt gar keine Summe mehr.

                               <fieldset>

                                   1x<br> Handschuh
                                    <input style="max-width:70px; max-height:12px" min="0" type="number" class="form-control" onkeyup="calculate()" name='B1[]' value='<?php echo $data2['B1']?>'/>
                                    <input type='hidden' name='PATNR[]' value='<?php echo $data2['PATNR']?>'/>
                                    <input type='hidden' name='EdatumI[]' value='<?php echo $data2['Edatum']?>'/> 
                                   H&auml;nde Desinfekt.
                                    <input style="max-width:70px; max-height:12px" min="0" type='number' onkeyup="calculate()"  name='B2[]' value='<?php echo $data2['B2']?>'/>          
                                   Fl&auml;chen Desinfekt. <br>  1000 ml / 500 ml
                                    <input style="max-width:70px; max-height:12px" min="0" type='number' onkeyup="calculate()" name='B3[]' value='<?php echo $data2['B3']?>'/> 
                                    <input style="max-width:70px; max-height:12px" min="0" type='number' onkeyup="calculate()" name='B4[]' value='<?php echo $data2['B4']?>'/> 
                                   Sch&uuml;rze waschbar
                                   <input style="max-width:70px; max-height:12px" min="0" type='number' onkeyup="calculate()" name='B5[]' value='<?php echo $data2['B5']?>'/>             
                                   1x<br> Bettschutz
                                    <input style="max-width:70px; max-height:12px" min="0" type='number' onkeyup="calculate()" name='B6[]' value='<?php echo $data2['B6']?>'/>             
                                   1x<br> Mundschutz
                                    <input style="max-width:70px; max-height:12px" min="0" type='number' onkeyup="calculate()" name='B7[]' value='<?php echo $data2['B7']?>'/>             
                                   1x<br> Fingerlinge
                                   <input style="max-width:70px; max-height:12px" min="0" type='number' onkeyup="calculate()" name='B8[]' value='<?php echo $data2['B8']?>'/>            
                                   1x<br> Sch&uuml;rze      
                                    <input style="max-width:70px; max-height:12px" min="0" type='number' onkeyup="calculate()" name='B9[]' value='<?php echo $data2['B9']?>'/>             
                               </div>
                               <div style="width:150px;float:left">
                                   Notizen        
                                    <textarea style="min-height:0px" cols="50" rows="2" name='Notizen[]'><?php echo $data2['Notizen']?></textarea>            
                               </div>
                               </fieldset>
                               <div style="width:100px;float:left">
                                   Summe        
                                    <output class="summe"></output>           
                               </div>
                      </div>
                  </div>
              </div>
          </div>
      </div>                                       
                  <?php 
          }  
    }
              if ($_SESSION['pruef'] == 0 )
              {
                 echo '                                      
                <input type="submit" name="Absenden" value="Absenden">';                   
              }
              if ($_SESSION['pruef'] == 1 )
              {
                  echo '                                         
                  <input type="submit" name="Speichern" value="Speichern">';
              } 
              echo ' </form>  '; 
?>
 
 <script type="text/javascript"><!--
 
   document.forms.Bestellungen.addEventListener("input", calculate);

function calculate(event) {
   let gruppe = event.target.closest("fieldset");
   let mengen = gruppe.querySelectorAll("input[type=number]");
   ...summe bilden
   let ausgabe = gruppe.querySelector(".summe");
   ausgabe.textContent = summe;

}
 //--></script>

Bei Deinem ersten Beispiel hattest Du ja

document.getElementById("output111").textContent = summe;

Dies ist für mich verständlich. Jetzt ist diese Zeile ja nicht mehr da, oder hätte ich die stehen lassen sollen ? Aber nö, habe es versucht, geht trotzdem nicht. In der Javascriptfunktion ist ja die Variable ausgabe vorhanden, aber was passiert mit dieser ?

LG

Lynn