Résolu Calcule Automatiser JS /PHP

Statut
N'est pas ouverte pour d'autres réponses.

Kwik_94

Nouveau membre
#1
Bonjour, je suis bloqué, je cherche a créer un devis automatiser. Et, j'effectue plusieurs test pour les calculs, pour une ligne imput j'arrive a effectuer le calcule. Mais lorsque j'intègre une boucle php pou afficher une succession de ligne d'imput . Je n'arrive pas à faire le simple calcul sur aucune des lignes. Pourriez vous m'aider svp, après une succession de test , sa comment a m'exaspérer.

voici mon script:
PHP:
<script type="text/javascript">
   function calculer()
   {
      
       document.form1.MT.value = (document.form1.MF.value * document.form1.TP.value)/100;
 }
</script>

la première ligne 
<tr>
          <td align='center'><input type='text' class = 'in' name = 'designation' size='25' onkeydown="calculer()"></td>
         <td align='center'><input type='text' class = 'in' name = 'MF' size='25' onkeydown="calculer()"></td>
          
          <td><select name='TP' size='1' onkeydown="calculer()">
                           <option value='a' selected> </option>
                           <option value='15'>Tx0</option>
                           <option value='20'>Tx1</option>
                           <option value='25'>Tx2</option>
                           </select></td>

          <td align='center'><input type='text' class = 'in' name = 'MT' size='25'onkeydown="calculer()"></td>
</tr>

 <input type="button" name="Actualiser" onclick="calculer()" value="Actualiser" /> 

et le code quand j'utilise php pour afficher 22 lignes

<?php
for($i=1;$i<=22;$i++)
{
?>
<tr>
          <td align='center'><input type='text' class = 'in' name = 'designation' size='25' onkeydown="calculer()"></td>
         <td align='center'><input type='text' class = 'in' name = 'MF' size='25' onkeydown="calculer()"></td>
          
          <td><select name='TP' size='1' onkeydown="calculer()">
                           <option value='a' selected> </option>
                           <option value='15'>Tx0</option>
                           <option value='20'>Tx1</option>
                           <option value='25'>Tx2</option>
                           </select></td>

          <td align='center'><input type='text' class = 'in' name = 'MT' size='25'onkeydown="calculer()"></td>
</tr>

                  
<?php
}
?>
 

VaderFR

Grand Maître
#2
Meilleure réponse
Bonjour,

c'est normal, tu as plusieurs fois les mêmes identifiants de champs, comment veux-tu qu'il s'y retrouve ?
ajoute ton $i dans la déclaration + calculer, et utilise ensuite GetElementByID pour récupérer les champs. Ou alors GetElementsByTag puis une boucle sur les éléments du tableau renvoyé, ou nextChild ...

vu que la variable PHP se retrouve dans les lignes générées, j'ai mis un echo.
j'ai aussi ajouté les fermetures de balises INPUT (W3C)
et pour avoir le code formaté sur le forum, utilise les balises [ code ] et [ / code ] (sans espaces)

Code:
<script type="text/javascript">
function calculer(numligne)
{
document.getElementById("MT"+numligne).value = (document.getElementById("MF"+numligne).value * document.getElementById("TP"+numligne).value)/100;
}
</script>
<table>
<form name="form1">
<?php
for($i=1;$i<=22;$i++)
{

echo "<tr>
<td align='center'><input type='text' class = 'in' name = 'designation' size='25' value='designation$i' onkeydown=\"calculer($i)\"/></td>
<td align='center'><input type='text' class = 'in' id='MF$i' name = 'MF$i' size='25' onkeydown=\"calculer($i)\"/></td>

<td><select name='TP$i' id='TP$i' size='1' onkeydown=\"calculer()\">
<option value='0' selected> </option>
<option value='15'>Tx0</option>
<option value='20'>Tx1</option>
<option value='25'>Tx2</option>
</select></td>

<td align='center'><input type='text' class = 'in' id='MT$i' name = 'MT$i' size='25'onkeydown=\"calculer($i)\"/></td>
</tr>";
}
?>
 

Kwik_94

Nouveau membre
#3
Merci pour ton aide mais je suis encore novice sur javascript!
 

EricDEV

Nouveau membre
#4
Bonjour j'aurais besoin d'aide. J'aimerais que quand je choisisse un nombre dans ma liste sa me mette automatiquement le prix total en dessous. pb montant total.png
voici le code :

Code:
<div class="sg-row">
                    <div class="sg-col-20-of-24 sg-col-28-of-32 sg-col-16-of-20 sg-col sg-col-32-of-36 sg-col-8-of-12 sg-col-12-of-16 sg-col-24-of-28">
                            <p style="
                                        font-weight: bold;
                                        font-size: 25px;
                                     ">
                                Kit Minage
                            </p>
                        <div class="sg-col-inner">
                            <p style="
                                      font-weight: bold;
                                      font-size: 20px;
                                      color: red;

                                     ">
                                <span id="price_inside_buybox" class="a-size-medium a-color-price">
                                    85.000&nbsp;$
                                </span>
                            </p>
                                <select name="quantity" autocomplete="off" id="quantity" tabindex="0" class="a-native-dropdown">
                                    <option value="1" selected="">1
                                    </option>
                                    <option value="2">2
                                    </option>
                                </select>
                                <span tabindex="-1" class="a-button a-button-dropdown a-button-small" id="a-autoid-0" aria-hidden="true" style="min-width: 0%;">
                                    <span class="a-button-inner">
                                        <span class="a-button-text a-declarative" data-action="a-dropdown-button" role="button" aria-hidden="true" id="a-autoid-0-announce">
                                            <span class="a-dropdown-label">
                                                Quantité :
                                            </span>
                                            <span class="a-dropdown-prompt">
                                                1
                                            </span>
                                        </span>
                                        <i class="a-icon a-icon-dropdown"></i>
                                    </span>
                                </span>

                                <div id="quantityAwarePriceRelocate_feature_div" class="feature" data-feature-name="quantityAwarePriceRelocate" data-cel-widget="quantityAwarePriceRelocate_feature_div">
                                </div>

                                <div id="soldByThirdPartyRelocate_feature_div" class="feature" data-feature-name="soldByThirdPartyRelocate" data-cel-widget="soldByThirdPartyRelocate_feature_div">
                                    <div id="soldByThirdParty" class="a-section a-spacing-small a-text-left">
                                        <span class="a-color-price price3P" dir="ltr">
                                            $ 85.000
                                        </span>
                                    </div>

                                </div>

                        </div>
                    </div>
                </div>
J'aimerais que quand la quantité augmente le deuxième 85.000$ se multiplie par la quantité choisi ...

Il me faudrait juste un code script normalement ...
 

svoglimacci

check memory failed but no bug detected
#5
Salut :)
Bonjour j'aurais besoin d'aide. J'aimerais que quand je choisisse un nombre dans ma liste sa me mette automatiquement le prix total en dessous. Voir la pièce jointe 7430
voici le code :

Code:
<div class="sg-row">
                    <div class="sg-col-20-of-24 sg-col-28-of-32 sg-col-16-of-20 sg-col sg-col-32-of-36 sg-col-8-of-12 sg-col-12-of-16 sg-col-24-of-28">
                            <p style="
                                        font-weight: bold;
                                        font-size: 25px;
                                     ">
                                Kit Minage
                            </p>
                        <div class="sg-col-inner">
                            <p style="
                                      font-weight: bold;
                                      font-size: 20px;
                                      color: red;

                                     ">
                                <span id="price_inside_buybox" class="a-size-medium a-color-price">
                                    85.000&nbsp;$
                                </span>
                            </p>
                                <select name="quantity" autocomplete="off" id="quantity" tabindex="0" class="a-native-dropdown">
                                    <option value="1" selected="">1
                                    </option>
                                    <option value="2">2
                                    </option>
                                </select>
                                <span tabindex="-1" class="a-button a-button-dropdown a-button-small" id="a-autoid-0" aria-hidden="true" style="min-width: 0%;">
                                    <span class="a-button-inner">
                                        <span class="a-button-text a-declarative" data-action="a-dropdown-button" role="button" aria-hidden="true" id="a-autoid-0-announce">
                                            <span class="a-dropdown-label">
                                                Quantité :
                                            </span>
                                            <span class="a-dropdown-prompt">
                                                1
                                            </span>
                                        </span>
                                        <i class="a-icon a-icon-dropdown"></i>
                                    </span>
                                </span>

                                <div id="quantityAwarePriceRelocate_feature_div" class="feature" data-feature-name="quantityAwarePriceRelocate" data-cel-widget="quantityAwarePriceRelocate_feature_div">
                                </div>

                                <div id="soldByThirdPartyRelocate_feature_div" class="feature" data-feature-name="soldByThirdPartyRelocate" data-cel-widget="soldByThirdPartyRelocate_feature_div">
                                    <div id="soldByThirdParty" class="a-section a-spacing-small a-text-left">
                                        <span class="a-color-price price3P" dir="ltr">
                                            $ 85.000
                                        </span>
                                    </div>

                                </div>

                        </div>
                    </div>
                </div>
J'aimerais que quand la quantité augmente le deuxième 85.000$ se multiplie par la quantité choisi ...

Il me faudrait juste un code script normalement ...
Salut :)
Ce topic date de 2016, tu devrais en créer un nouveau juste pour toi :)

P.S. Tu l'as déjà fait, impeccable.
 

mezigo

Modo operandi
Staff
#6
Alors pour éviter un autre déterrage… clic-clac !
 
Statut
N'est pas ouverte pour d'autres réponses.
Staff en ligne
  • Basturbe
    Modérateur configopathe
Membres en ligne
  • LeeLarant
  • Matt Cooper
  • p68
  • Albergio
  • Christobis
  • TyphLePharaon
  • Basturbe
  • rossiro
Derniers messages publiés
Statistiques globales
Discussions
868 265
Messages
8 093 847
Membres
1 578 803
Dernier membre
TyphLePharaon
Partager cette page
Haut