Calcul

Calcul - HTML/CSS - Programmation

Marsh Posté le 29-10-2012 à 19:39:06    

Bonjour,
 
j'expose ici mon probleme de somme d'addition de 4 inputs
 

Code :
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
  3.     <head>
  4.         <title>Calcul</title>
  5.        
  6.         <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  7.         <link rel="stylesheet" href="style_tarif.css"></link>
  8.         <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
  9.         <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.19/jquery-ui.min.js"></script>
  10.         <script type="text/javascript" src="javascript.js"></script>
  11.     </head>       
  12.     <body>
  13.         <div id="bloc_page">
  14.             <table>
  15.                 <caption>PRIX VAISSEAUX LEGERS DE BASE</caption>
  16.                 <thead>
  17.                     <tr>
  18.                         <th class="type_v">Nom vaisseaux</th>
  19.                         <th class="type">Nombres vaisseaux</th>
  20.                         <th class="type">Plutonium</th>
  21.                         <th class="type">Acier</th>
  22.                         <th class="type">Xenon</th>
  23.                         <th class="type">Hydrogene</th>
  24.                         <th class="type">Points</th>
  25.                         <th class="type">Tirs</th>
  26.                     </tr>
  27.                 </thead>
  28.                 <tbody>
  29.                     <tr>
  30.                         <th style="text-align: left">Chasseurs Legers</th>                           
  31.                         <th><span id="cl_nbre" value="0">0</span></th>                           
  32.                         <th>
  33.                             <input id="input_ships_clpu" type="text" onkeyup="Calcul('ships','clpu', 'cl');" value="0" name="input_ships_clpu"/>
  34.                             <input id="datas_ships_clpu" type="hidden" value="210:0:0:0:1:1" name="datas_ships_clpu"/>
  35.                         </th>
  36.                         <th>
  37.                             <input id="input_ships_clac" type="text" onkeyup="Calcul('ships','clac', 'cl');" value="0" name="input_ships_clac"/>
  38.                             <input id="datas_ships_clac" type="hidden" value="0:750:0:0:1:1" name="datas_ships_clac"/>
  39.                         </th>
  40.                         <th>
  41.                             <input id="input_ships_clxe" type="text" onkeyup="Calcul('ships','clxe', 'cl');" value="0" name="input_ships_clxe"/>
  42.                             <input id="datas_ships_clxe" type="hidden" value="0:0:620:0:1:1" name="datas_ships_clxe"/>
  43.                         </th>
  44.                         <th>
  45.                             <input id="input_ships_clhy" type="text" onkeyup="Calcul('ships','clhy', 'cl');" value="0" name="input_ships_clhy"/>
  46.                             <input id="datas_ships_clhy" type="hidden" value="0:0:0:300:1:1" name="datas_ships_clhy"/>
  47.                         </th>
  48.                         <th><span id="cl_points">0</span></th>
  49.                         <th><span id="cl_tirs">0</span></th>               
  50.                     </tr>
  51.                 </tbody>
  52.             </table>
  53.         </div>
  54.     </body>
  55. </html>


 
 

Code :
  1. function Calcul(type, element, vaisseau){
  2. number = parseInt($('#input_'+type+'_'+element).val());
  3. if( (number < 0) || (isNaN(number) == true) ){ number = 0 ; }
  4. nbres = $('#datas_'+type+'_'+element).val();
  5. nbre = nbres.split(":" );
  6.         if(number > 0){ Cost_pluto = number / parseInt(nbre[0]); } else { Cost_pltuo = parseInt(nbre[0]) ; }
  7.         if(number > 0){ Cost_acier = number / parseInt(nbre[1]); } else { Cost_acier = parseInt(nbre[1]) ; }
  8.         if(number > 0){ Cost_xenon = number / parseInt(nbre[2]); } else { Cost_xenon = parseInt(nbre[2]) ; }
  9.         if(number > 0){ Cost_hydro = number / parseInt(nbre[3]); } else { Cost_hydro = parseInt(nbre[3]) ; }
  10.        
  11.         Cost_nbre = parseInt(Cost_pluto);
  12.         //Cost_nbre = parseInt( Cost_pluto + Cost_acier + Cost_xenon + Cost_hydro );
  13.        
  14.         if(number > 0){ Cost_points = parseInt(nbre[4] * Cost_nbre); } else { Cost_points = parseInt(nbre[4]) ; }
  15.         if(number > 0){ Cost_tirs = parseInt(nbre[5] * Cost_nbre); } else { Cost_tirs = parseInt(nbre[5]) ; }
  16.      
  17. $('#'+vaisseau+'_nbre').text(Add_Sep_Pt(parseInt(Cost_nbre)));
  18.         $('#'+vaisseau+'_points').text(Add_Sep_Pt(Cost_points));
  19.         $('#'+vaisseau+'_tirs').text(Add_Sep_Pt(Cost_tirs));
  20. }
  21. function Add_Sep_Pt(nbre){
  22.  var str_nbre = "";
  23.  for (cpt = nbre.toString().length - 3; cpt >= 0; cpt = cpt - 3 )
  24.  {
  25.   str_nbre = nbre.toString().substr(cpt, 3) + "." + str_nbre;
  26.  }
  27.  if ( (nbre.toString().length % 3) != 0 )
  28.  str_nbre = nbre.toString().substr(0, nbre.toString().length % 3) + "." + str_nbre;
  29.  str_nbre = str_nbre.substr(0, str_nbre.length - 1);
  30.  return (str_nbre);
  31. }


 
Sachant que j'ai 20 lignes de 4 inputs
Help me please !!!  
 
 
Une question peut on utiliser plusieurs split() dans une meme fonction ??
 
 

Reply

Marsh Posté le 29-10-2012 à 19:39:06   

Reply

Marsh Posté le 30-10-2012 à 09:15:18    

Pourquoi tu n'utilises pas une boucle pour itérer sur tes 20 lignes de 4 inputs :??:


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed