Aller au contenu

Vanator

Membre
  • Compteur de contenus

    9
  • Inscrit(e) le

  • Dernière visite

Réputation sur la communauté

0 Neutre
  1. Je sais que je vais répondre à côté, et que ce n'est pas en attente de la réponse (peut-être déjà trouvée depuis), surtout que je ne connais pas trop Javascript encore car je débute, donc pour t'aider c'est pas moi qui pourrait t'aider. Toutefois, je souhaitais dire que pour les menus déroulants il vaut mieux les faire en CSS, car par exemple Google ne suit pas les menus déroulants en Javascript. Et puis c'est plus propre en CSS Gabarits de menus déroulants en CSS sur Alsacréations
  2. Bah je n'ai pas d'erreur, le soucis que j'ai c'est que je ne sais pas pourquoi la 1ère fois le script s'exécute parfaitement sans soucis, mais dès qu'on change la valeur d'un 2e champ là ça créé une erreur, quel que soit le champ rempli en 1er et en 2e. Je ne comprends vraiment pas C'est comme si quelque chose changé à la première exécution et non réinitialisé empêchait le script de s'exécuter une seconde fois... Hier j'ai apssé toute la journée sur ce #&@% formulaire en vérifiant 6549465 possibilités et au final je ne sais toujours pas ce qui se passe, j'en deviens
  3. Ne faut-il pas mettre plutôt function prix(i) { alert('test'); quantite = eval('parseFloat(document.formulaire.quantite_'+i+')'); prix = eval('parseFloat(document.formulaire.prix_'+i+')'); } Pour les parenthèses ? Enfin sans cette correction ça ne calcule plus rien et ça met une erreur avant, et avec ça ne marche pas plus
  4. Y'a un truc qui est bizarre c'est que si je teste les lignes une par une en rajoutant au fûr et à mesure pour voir quand ça bloque, si je mets ceci : function prix(i) { alert('test'); quantite = eval('document.formulaire.quantite_'+i); } ça fonctionne. Mais dès que je mets celà : function prix(i) { alert('test'); quantite = eval('document.formulaire.quantite_'+i); prix = eval('document.formulaire.prix_'+i); } ça bloque, mais je ne vois pas pourquoi
  5. Voici même le formulaire de la page PHP en entier (au cas où cela vienne d'autre chose) : echo '<form method="post" name="formulaire" action="cor_commande_pdf.php">'; echo '<table id="commande">'; echo '<tr>'; echo '<td><h4>Désignation du produit</h4></td>'; echo '<td><h4>Quantité</h4></td>'; echo '<td><h4>Prix unitaire</h4></td>'; echo '<td><h4>Total</h4></td>'; echo '</tr>'; $requete = mysql_query('SELECT * FROM cor ORDER BY cor_id DESC'); $nombre = mysql_num_rows($requete); $i = 1; while($data = mysql_fetch_object($requete)) { echo '<tr>'; echo '<td><span class="gras">n°'.afficher($data->cor_id).'</span> - '.afficher($data->cor_titre).'</td>'; echo '<td class="prix"><input type="text" name="quantite_'.$i.'" class="champ" maxlength="2" value="0" onchange="prix('.$i.')"/></td>'; echo '<td class="prix"><input type="text" name="prix_'.$i.'" class="prix" value="5.50" onfocus="this.blur();"/></td>'; echo '<td class="prix"><input type="text" name="total_'.$i.'" class="champ" value="0" onfocus="this.blur();"/></td>'; echo '</tr>'; $i = $i + 1; } echo '<tr>'; echo '<td><h4>Frais de port</h4></td>'; echo '<td></td>'; echo '<td class="prix"><input type="text" name="frais_port" class="prix" value="1.50" onfocus="this.blur();"/></td>'; echo '<td class="prix"><input type="text" name="total_port" class="champ" onfocus="this.blur();"/></td>'; echo '</tr>'; echo '<tr id="total">'; echo '<td><b>TOTAL NET A PAYER</b></td>'; echo '<td></td>'; echo '<td></td>'; echo '<td class="prix"><input type="text" name="total_final" class="champ" onfocus="this.blur();"/></td>'; echo '</tr>'; echo '</table>'; echo '<p class="centre"><input type="submit" value="Valider" /></p>'; echo '</form>';
  6. dans ma page PHP j'ai ceci comme code : echo '<td class="prix"><input type="text" name="quantite_'.$i.'" class="champ" maxlength="2" value="0" onchange="prix('.$i.')"/></td>'; où $i est donné en fonction d'une boucle. J'ai le même soucis si je mets onblur.
  7. Bonjour, hier j'ai posté un message pour un script. Après que le problème soit résolu, j'ai à nouveau un autre problème (toujours sur le même script). Pour info voir ici : sujet du problème précédent Maintenant j'ai un autre soucis. J'ai fait un petit script tout simple qui recalcule le prix total pour chaque article selon son prix unitaire et la quantité souhaitée. Voici le code : function prix(i) { quantite = eval('document.formulaire.quantite_'+i); prix = eval('document.formulaire.prix_'+i); tot = eval('document.formulaire.total_'+i); tot.value = quantite.value * prix.value; } où la variable "i" est l'identifiant de l'objet. Ce que je ne comprends pas c'est que le script fonctionne correctement 1 fois, mais après lorsque je rempli une 2e champ et qu'il doit recalculer pour le 2e total en réexecutant le même script, il ne fonctionne pas Quelqu'un peut-il m'aider ? Merci d'avance
  8. Ok, merci, ça marche du tonnerre Après avoir apprit à maîtriser pas trop mal PHP je débute en Javascript, donc je n'ai pas encore l'habitude. Merci beaucoup
  9. Bonjour, j'ai un soucis en javascript avec la concaténation. En fait j'ai un formulaire dynamique, c'est à dire le nombre de champs est variable selon ce qui est trouvé dans la base de donnée. je les nomme par exemple 'nomduchamp_'.$i où $i change. C'est à dire j'ai un champ 'champ_1', 'champ_2', 'champ_3', etc. Dans mon fichier javascript j'aimerai pouvoir récupérer le nom du champ grâce à une boucle pour faire subir un traitement. Voici donc comment j'ai essayé de faire au moins pour tester si le script prenait bien ce que je voulais : for(i=1;i<4;i=i+1) { champ = document.formulaire.champ_+i; alert(champ.value); } Mais évidemment ça ne marche pas [decu] La manière de concaténer n'est pas bonne. Mais si je mets ceci : for(i=1;i<4;i=i+1) { champ = 'document.formulaire.champ_'+i; alert(champ.value); } J'obtiens bien "document.formulaire.champ_1", "document.formulaire.champ_2", etc, mais il le prend comme une chaîne de caractère et non plus un objet. Quelqu'un pourrait-il m'aider pour résoudre ce problème ? Merci d'avance
×
×
  • Créer...