Aller au contenu

[js] Parametres de fonction


NerOcrO

Sujets conseillés

uiop,

J'ai une fonction js comme suit :

function fct1(id,elem)
{
alert(document.getElementById(id).elem.value);
}

La console javascript de firefox me retourne qu'il ne connait pas 'elem' donc j'en conclut qu'il ne prend pas en compte ma variable.

Comment écrire pour qu'il l'a prenne en compte ?

Nero ... un mec qui a vraiment du mal avec js lol.

PS :

<form action="" id="tableau">
<input type="text" id="aleas_travaux_0" value="5" onkeyup="fct1('tableau','aleas_travaux_0')" />
</form>

Modifié par NerOcrO
Lien vers le commentaire
Partager sur d’autres sites

Tu passes une valeur à ta fonction, vraisemblablement une chaîne de caractères.

Donc définis ta fonction différemment:

function fct1(msg)
{
alert(msg);
}

Mais dans ce cas elle ne sert plus à rien...

Autant utiliser directement l'appel à alert() dans ton onkeyup, non ?:

Lien vers le commentaire
Partager sur d’autres sites

J'ai bien évidemment plusieurs input à la suite (d'où le 0 sur mon id).

Ce que je veux faire, c'est récupérer la valeur de l'input pour faire un calcul. Ici j'ai fait une procédure simple juste pour mon problème en faisant un alert pour visualiser ma valeur entrée.

PS : j'ai modifié mon premier post, ce n'était pas this.value mais l'id de l'input.

Modifié par NerOcrO
Lien vers le commentaire
Partager sur d’autres sites

Ta réponse m'a fait réfléchir (lol) et c'est vrai qu'en mettant ton script, cela fonctionne.

Mais il me semble qu'on pouvait écrire comme je l'ai fait non ?

Car sans passer par des variables et en mettant en dur mes id, j'ai bien le retour de ma valeur, donc c'est surtout au niveau de l'écrire de ma fonction que j'ai un soucis.

Lien vers le commentaire
Partager sur d’autres sites

Je ne vois pas l'intérêt du 'tableau'.

Tu crées juste ta fonction

<script type="text/javascript">
function fct1(valeur) {
alert(valeur);
}
</script>

et tu l'appelles avec ça :

<input type="text" id="aleas_travaux_0" value="5" onkeyup="fct1(this.value)" />

Lien vers le commentaire
Partager sur d’autres sites

Ok donc on va dire qu'on fait abstraction de ce que doti faire ma fonction.

J'ai un problème d'écriture.

J'ai une fonction avec comme paramètre l'id d'un form et l'id d'un input.

Je veux l'afficher tout simplement avec ces deux paramètres.

C'est plus clair ?

Lien vers le commentaire
Partager sur d’autres sites

Si ton tableau te sert au calcul :

<input type="text" id="aleas_travaux_0" value="5" onkeyup="fct1(this,'tableau');"

function fct1(field,field2)

{

var thisaleas_travaux=field.value;

var tableau=field2;

//calcul

}

<edit> Oups j'ai posté sans voir ta réponse </edit>

Mais je ne comprend pas à quoi te sert de rendre les input de la fonction variables si elle est déclenchée avec un évenement onkeyup qui est au niveau de la ligne ?

Il faudrait qu'on voie le reste de ton code pour te répondre

Lien vers le commentaire
Partager sur d’autres sites

C'est parce que j'en ai plusieurs et je dois tous les additionner pour afficher un résultat d'où faire une fonction.

J'ai trois input, deux pour entrer des valeurs quelconques et le troisième pour afficher le résultat.

Mais je répète, la fonction de ma procédure importe peu, je veux juste savoir comment bien écrire ma ligne alert().

On va y arriver hein :D

Lien vers le commentaire
Partager sur d’autres sites

J'ai trois input, deux pour entrer des valeurs quelconques et le troisième pour afficher le résultat.

<{POST_SNAPBACK}>

Le troisieme c'est l'ouput de ta fonction et non pas un input.

<input type="text" id="aleas_travaux_0" value="5" onkeyup="fct1(this,'input1','input2');"

function fct1(field,field1, field2)

{

var thisaleas_travaux=field.value;

var input1=field1;

var input2=field2;

var myoutput=0

//calcul

alert(myoutput)

}

Lien vers le commentaire
Partager sur d’autres sites

Pourtant je suis clair, je ne veux pas savoir le calcul, je veux savoir comment écrire ma ligne alert().

Avec ta fonction, si j'ai 50 input, elle ne fonctionne plus à moins de mettre 50 paramètres ...

Merci de ton aide robinsonvendredi mais ce n'est pas ce que je demande :(

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...