Menu déroulant

Eléphant du PHP | 451 Messages

31 juil. 2006, 17:49

Je voudrais simplement avec mon menu déroulant avoir la description des valeurs du menu dans un input text c'est tout.
Mais en java cela ne fonctionne pas parce que je dois utiliser des [].
J'ai essayé de faire marcher le code que tu as donné.
Si tu sélectionne quelque chose dans le menu déroulant, le code que je t'ai donné va mettre à jour le champ input texter[1]

Pour eviter de voir texter[0] tu peux changer input en hidden.

Je n'ai rien vu dans ton code qui permet de modifier un des champs p[] et d'apeler la focntion recalculer...
Maintenant si tu as d'autres questions, dis ce qu'il faut faire pour reproduire ce qui ne marche pas (et donnes aussi le code correspondant)...
Jpaul
J'essaye d'aider : parfois je fais des erreurs, on me les corrige et j'apprends un peu plus. Super ce forum :)

Eléphant du PHP | 120 Messages

31 juil. 2006, 17:50

ah bein voilà quand tu veux!! :)
là c bcp mieux :
tu as plusieurs input text qui vont etre modifiés par tel ou tel menu déroulant????

si c'est ça, alors essaie de donner des nom différents tout simplement ou alors des id différents à tes input text ;)

Eléphant du PHP | 451 Messages

31 juil. 2006, 17:54

De plus tu pourrais m'expliquer ceci
case "Pose façade":alert(document.prestations_tvd.texter);document.prestations_tvd.texter.value[1]="TA241";break; 
Ca c'est moi qui l'ai laissé, j'avais juste rajouté alert(document.prestations_tvd.texter);
pour comprendre, c'est un oubli, il faut l'enlever :
case "Pose façade":document.prestations_tvd.texter.value[1]="TA241";break; 
[/quote]
Jpaul
J'essaye d'aider : parfois je fais des erreurs, on me les corrige et j'apprends un peu plus. Super ce forum :)

Eléphant du PHP | 451 Messages

31 juil. 2006, 17:59

ah bein voilà quand tu veux!! :)
là c bcp mieux :
tu as plusieurs input text qui vont etre modifiés par tel ou tel menu déroulant????

si c'est ça, alors essaie de donner des nom différents tout simplement ou alors des id différents à tes input text ;)
J'imagine que s'il a utilisé des tabeaux, c'est que ça l'arrange.
En fait, il suffit déclarer les input en indiquant pas l'indice :

Code : Tout sélectionner

<input type="text" name="p" size="5" onchange="recalculer1();" />
le tableau va se créer de lui même en dynamique.
l'indice de base étant 0
pour commencer à l'indice 1, il suffit d'ajouter avant le premier :

Code : Tout sélectionner

<input type="hidden" name="p" size="5" onchange="recalculer1();" />
ce devrait marcher...
Jpaul
J'essaye d'aider : parfois je fais des erreurs, on me les corrige et j'apprends un peu plus. Super ce forum :)

ViPHP
ViPHP | 2291 Messages

31 juil. 2006, 18:01

Le fichier js est externe
<script language="javascript" src="tvd.js"></script>
et la function est
function recalculer()
{
//déclarons des variables temporaires
var val1=0;
var val2=0;
var val3=0;
var val4=0;
var val5=0;
var val6=0;
var val7=0;
var val8=0;
var val9=0;
var val10=0;
//ligne 2


// et une variable pour le total
var total1=0;
val1=Number(document.getElementById('p[1]').value);
val2=Number(document.getElementById('p[2]').value);
val3=Number(document.getElementById('p[3]').value);
val4=Number(document.getElementById('p[4]').value);
val5=Number(document.getElementById('p[5]').value);
val6=Number(document.getElementById('p[6]').value);
val7=Number(document.getElementById('p[7]').value);
val8=Number(document.getElementById('p[8]').value);
val9=Number(document.getElementById('p[9]').value);
val10=Number(document.getElementById('p[10]').value);
//ligne2

//calculons le total
total1=val1+val2+val3+val4+val5+val6+val7+val8+val9+val10;

//plaçons-le dans le chmaps resultat
document.getElementById('total[1]').value=total1;

}
Ceci juste pour info car elle fonctionne
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

Eléphant du PHP | 451 Messages

31 juil. 2006, 18:05


Pour le p[] cela fonctionne correctement, mais j'ai du mal avec ta solution je ne la comprend pas excuse moi :oops:

Arf ca va trop vite, je n'avais pas vu ce post :?


Si les p[] fonctionnent correctement, ma solution pour que texter fonctionne c'est :
on ne met pas les indices pour texter on rajoute un premier texter qui sera invisible et qui occupera la position 0 du tableau en suite le deuxième va prendre le position 1 automatiquament et ça roule :
<input type="hidden" size="10" name="texter" />
<input type="text" size="10" name="texter" /></p>
Jpaul
J'essaye d'aider : parfois je fais des erreurs, on me les corrige et j'apprends un peu plus. Super ce forum :)

Eléphant du PHP | 451 Messages

31 juil. 2006, 18:11

L'autre possibilité si tu veux garder ton texter[1] c'est de remplacer :
document.prestations_tvd.texter[1].value
par :
document.getElementById('texter[1]').value

puisque ça marche pour les p[] ;)
bien sur, il faut garder le id moi je l'avais viré pour ne garder que name...
Jpaul
J'essaye d'aider : parfois je fais des erreurs, on me les corrige et j'apprends un peu plus. Super ce forum :)