Bonjour,

Je dois réaliser un tableau pour calculer des prix.
Voir le tableau
lorsque je charge la page, je remplis mon tableau avec des données de ma bdd!
Je calcule le prix en fonction du champ EL calculé, seulement je laisse la possibilité de modifier la valeur avec le champ EL effectif.
Lorsqu'il y a une modif dans cette colonne, j'aimerais que le prix soit recalculé par rapport à cette colonne, soit avec un bouton recalculé plus bas, soit automatiquement (j'aimerais bien !)
code du tableau :

<form method="post">
                <h3>IMB</h3>
                <table id="ftth" class="display table table-bordered table-hover list-com">
                    <thead>
                    <tr>
                        <th>Dossier</th>
                        <th>Date de chargement Dossier minute</th>
                        <th>EL calculé</th>
                        <th>El effectif</th>
                        <th>Prix calculé</th>
                        <th>Ville</th>
                        <th class="text-center">Attacher</th>
                    </tr>
                    </thead>
                    <tbody>
                    <?php foreach($imb as $c):
                        $date = new DateTime($c->date_minute);
                        ?>
                        <tr>
                            <td><?= $c->dossier;?></td>
                            <td><?= $date->format('d-m-Y');?></td>
                            <td><?= $c->nb_logements;?></td>
                            <td><input type="number" class="form-control input-sm" name="<?= 'el_'.$c->dossier;?>" value="<?= $c->nb_logements;?>"></td>
                            <td class="text-right"><?php
                                $total = $c->nb_logements*$c->prix;
                                echo $total.' €';
                                ?>
                            </td>
                            <td><?= $c->localite;?></td>
                            <td class="text-center">
                                <input name="<?= 'chek_'.$c->dossier;?>" type="checkbox">
                            </td>
                        </tr>
                    <?php endforeach;?>
                    </tbody>
                </table>
                <button type="submit" name="submit" class="btn btn-success pull-right btn-com">Valider</button>
                <button type="button" name="submit" class="btn btn-primary pull-right btn-com">Recalculer</button>

            </form>

7 réponses


Louis2304
Réponse acceptée
<script type="text/javascript">
function calcul(){
                var prix = Number(document.getElementById("heuresI").value);

                var quantite = Number(document.getElementById("txhoraire").value);

                var ttc = Number(prix * quantite);
                document.getElementById("ttc").value = ttc;
            }

</script>

Un truc du style x) -> http://www.developpez.net/forums/d1250310/webmasters-developpement-web/javascript-ajax-typescript-dart/javascript/calcul-automatique-selon-input/

Tu peux le faire en AJAX. Quand tu submit le EL effectif ca reload ton calcul.

cid5420
Auteur

bah je ne veux pas faire un submit de mon formulaire, car il est réservé à une action bien définie !

mmmh, un calcul en javascript alors ? ^^

cid5420
Auteur

oui j'y ai pensé mais je ne vois pas trop comment faire !

cid5420
Auteur

ok merci je vais essayer !

cid5420
Auteur

dans ma boucle, je génére le name automatiquement de mes champs input. Je souhait faire la même chose pour les ID mais comment le récupérer en js ? j'ai essayé d'envoyer la variable dans la conction calcule mais ça ne fonctionne pas