Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    103

    operazioni su input clonati

    Buonasera,
    ho necessità di duplicare degli input contenuti in un div nascosto con css (class="hide") e, una volta duplicati, devo effettuare delle operazioni: estrarre il valore con val(), fare una moltiplicazione e restituire il risultato ad un altro input.
    Il codice funziona perfettamente, nel senso che duplica gli input al click su ".add-more", rimuove gli input al click su ".remove" ma non effettua la moltiplicazione sugli input clonati (funziona sugli input "iniziali").
    Allego il codice se qualcuno ha voglia e tempo di risolvere questo problema. Grazie.
    codice:
     <div class="oko col-xs-12">
    <div class="form-group after-add-more col-xs-11">
    
    
    <div class="col-xs-3 voce">
    <input type="text" name="<?php echo $key2; ?>voce[]" class="form-control" placeholder="Voce">
     </div>
    
    
    <div class="col-xs-2 desc">
    <input type="text" name="<?php echo $key2; ?>desc[]" class="form-control" placeholder="Descrizione">
     </div>
    
    
    <div class="col-xs-2 subt">
    <input type="text" name="<?php echo $key2; ?>subt[]" class="form-control" placeholder="Subtotale" readonly>
    </div>
    
    
    </div>
    
    <div class="add-more col-xs-1">
    <button class="btn btn-success fa fa-plus add-more" type="button"></button>
    </div>
    
    
     <div class="hide">
    <div class="form-group control-group">
    
    
    <div class="col-xs-2 voce">
    <input type="text" name="<?php echo $key2; ?>voce[]" class="form-control" placeholder="Voce">
    </div>
    
    
    <div class="col-xs-2 desc">
    <input type="text" name="<?php echo $key2; ?>desc[]" class="form-control" placeholder="Descrizione">
    </div>
    
    
    <div class="col-xs-2 subt">
    <input type="text" name="<?php echo $key2; ?>subt[]" class="form-control" placeholder="Subtotale" readonly>
    </div>
    
    
    <div class="col-xs-1 remove">
    <button class="btn btn-danger fa fa-minus" type="button"></button>
    </div>
    
    
    </div>
    </div>
    
    
    
    
    </div>
    
    
    
    
       <script type="text/javascript">
          $(document).ready(function() {
    
            $(".add-more").click(function(){
                var html = $(this).next().clone().attr("class","copy");
                $(this).parents(".oko").after(html);
            });
    
            $("body").on("click",".remove",function(){
                $(this).parents(".control-group").remove();
            });
    
          });
    
       </script>
          <script type="text/javascript">
               $(document).ready(function() {
            $(".form-group").on("change", function(){
                var a = $(this).find('.voce input').val();
                var b = $(this).find('.desc input').val();
                var tot = a*b;
                $(this).find('.subt input').val(tot);
            });
                });
    
       </script>

  2. #2
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ciao, si chiama delegazione dell'evento.
    Lo hai già fatto per il click su .remove, dovrai quindi impostare una cosa simile per il change su .form-group;
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    103
    Quote Originariamente inviata da KillerWorm Visualizza il messaggio
    Ciao, si chiama delegazione dell'evento.
    Lo hai già fatto per il click su .remove, dovrai quindi impostare una cosa simile per il change su .form-group;

    Grande!

    codice:
            $("body").on("change", ".form-group", function(){ 
                var a = $(this).find('.pers input').val();
                var b = $(this).find('.desc input').val();
                var tot = a*b;
                $(this).find('.subt input').val(tot);
            });

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.