begin process at 2012 05 29 04:22:20
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript Orienté objet (POO)

 > 

Function & Méthodes

 > 

Comment inclure une variable dans une fonction javascript ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Comment inclure une variable dans une fonction javascript ?

jeudi 5 février 2009 à 17:30:24 | Comment inclure une variable dans une fonction javascript ?

Pacoch

Bonjour !

J'aurais besoin d'un petit coup de main pour intégrer une variable dans un script javascript.
Voici le code Javascript :

<SCRIPT LANGUAGE="JavaScript">
var taux0=2.00;
var taux1=1.60; 
......
var taux7=1.12; 

function conv(valeur)
{
taux=taux0;
if (parseFloat(valeur)>=1000) {taux=taux7;}
else
if (parseFloat(valeur)>=30) {taux=taux1;}
else
{
if (parseFloat(valeur)>=0) {taux=taux0}
}
}
total=Math.round(parseFloat(valeur)*taux);

document.forms["form"].elements["prixglob"].value=total;
}
</script>

Et voilà le code php dans le body :
<input name=\"prixachat\" size=\"15\" type=\"text\" value=\"$site[prixachat]\" onchange=\"conv(this.value);\" tabindex=\"7\">
<INPUT type=\"text\" name=\"prixglob\" size=\"15\" disabled>

Le champ prixglob affiche un prix calculé selon le script. Mon problème est qu'il s'agit d'une liste de prix où j'ai sur une seule page 50 produits par exemple donc aussi 50 champs prixglob  et que le script ne fonctionne pas.

Pouvez-vous me dire comment modifier le script javascript pour qu'il soit appliqué sur l'ensemble de la page ?

J'ai pas l'impression d'être clair, donc si besoin, n'hésitez pas..

Un grand merci pour votre aide !
Pascal
jeudi 5 février 2009 à 18:10:05 | Re : Comment inclure une variable dans une fonction javascript ?

PetoleTeam

Membre Club
Bonjour,
pas très bien regardé mais
document.forms["form"].elements["prixglob"].value=total;
me semble incorrect mettre plutôt
document.form.prixglob.value=total;
pour accéder à l'objet input name="prixglob"

Il est de plus déconseillé d'utiliser les mots réservés comme form pour identifié un objet...
;O)
jeudi 5 février 2009 à 18:46:57 | Re : Comment inclure une variable dans une fonction javascript ?

Bul3

Membre Club
bonjour,

et si tu as 50 champs proxglob, faut dire lequel !
sinon comment le navigateur peut-il choisir ?
tu dois avoir autant de prix d'achat, je suppute

par exemple ( mais on peut faire de 2687 manières différentes ! )
( un id avec une partie commune par exemple ou ... )

<form name="frm" >
    <input name="prixachat" size="15" type="text" value="$site[prixachat]"
        onchange="conv(this.value,0);" tabindex="7">
    <INPUT type="text" name="prixglob" size="15" disabled>
    <input name="prixachat" size="15" type="text" value="$site[prixachat]"
        onchange="conv(this.value,1);" tabindex="7">
    <INPUT type="text" name="prixglob" size="15" disabled>
</form>

pas vérifié tes if else !

function conv(valeur,poste)
{   var taux=taux0;
    if (parseFloat(valeur)>=1000)
            {    taux=taux7;    }
    else    {    if (parseFloat(valeur)>=30)
                        {    taux=taux1;    }
            }
var total=Math.round(parseFloat(valeur)*taux);
document.frm.prixglob[poste].value=total;
}


mais bon faut voir si j'ai compris....


Cordialement

[mon Site][M'écrire]Bul

vendredi 6 février 2009 à 08:16:28 | Re : Comment inclure une variable dans une fonction javascript ?

Pacoch

Bonjour !!

Merci pour vos réponses, rapides et claires, c'est super !

En effet, c'est un script que j'avais sur une page où je ne modifiais les prix que d'un article. Et maintenant je voudrais changer les prix sans avoir besoin d'ouvrir chaque article. Donc je choisis une catégorie de produits, et là j'ai la liste complète des articles concernés. (il peut y en avoir entre 1 et 500).

Le problème est justement que prixglob n'est pas différencié avec mon ancien script. Et je pense que je dois juste lui donner une variable comme id_produit par exemple.. mais je n'y arrive pas.

J'ai essayé avec tes corrections Bul3 mais cela ne fonctionne pas. Il semble que prixglob (le champ input qui doit me donner le prix ttc selon le javascript n'est pas avec une variable et l'ensemble des champs prixglob ont la même "id"...

Il ne devrait pas y avoir une variable dans prixglob ici : <INPUT type="text" name="prixglob" size="15" disabled>

Pour le champ dans lequel j'indique le prix d'achat : j'ai mis une variable ainsi : onchange="conv(this.value,$id_pro) est-ce que c'est bien correct ?

Je nage complètement là..

Merci pour votre aide à tous !!!
Pascal

vendredi 6 février 2009 à 08:53:45 | Re : Comment inclure une variable dans une fonction javascript ?

Bul3

Membre Club
>>J'ai essayé avec tes corrections Bul3 mais cela ne fonctionne pas.
si, si ( l'impératrice ) ça fonctionnne
peut être pas comme tu veux, mais je disais ; mais bon faut voir si j'ai compris....
alors peut-tu nous mettre le html comme il devrait être ? :
pas plus que ci-dessous !
<form name="frm" >
    <input name="prixachat" size="15" type="text" value="$site[prixachat]"
        onchange="conv(this.value,0);" tabindex="7">
    <INPUT type="text" name="prixglob" size="15" disabled>
    <input name="prixachat" size="15" type="text" value="$site[prixachat]"
        onchange="conv(this.value,1);" tabindex="7">
    <INPUT type="text" name="prixglob" size="15" disabled>
</form>
et  nous dire

>et l'ensemble des champs prixglob ont la même "id"...
primo, je jouais avec les name, deuxio un ID doit être uniques dans une page


[mon Site][M'écrire]Bul

vendredi 6 février 2009 à 09:23:44 | Re : Comment inclure une variable dans une fonction javascript ?

Pacoch

Re, merci pour la réponse rapide, voici le code comme je le souhaiterais. A noter qu'il est dans une boucle (while) car cela provient d'une db MySQL...

<form action=\"edit_prod.php?id_pro=$id_pro&cat=$cat\" method=\"post\" name=\"prx\">
<input name=\"prixachat_prod[$id_pro]\" onchange=\"conv(this.value);\" type=\"text\" value=\"$site[prixachat_prod]\" size=\"6\">
<input name=\"prixglob\" type=\"text\" size=\"6\">
<input name=\"pxht_prod[$id_pro]\" type=\"text\" value=\"$site[pxht_prod]\" size=\"6\">
</form>

Le but est : dans le champ prixachat_prod j'indique le prix d'achat et il m'indique dans le champ prixglob le prix de vente avec la marge calculée par le javascript. Cela n'est qu'une indication que je reprends ensuite pour pour entrer manuellement dans pxht_prod.

Voilà.. j'espère être plus clair
Merci encore !!
Pascal
vendredi 6 février 2009 à 10:28:13 | Re : Comment inclure une variable dans une fonction javascript ?

Bul3

Membre Club
et comment on devine ce que le php génère ?
on n'a pas ta base de données nous !
IL FAUT METTRE UN EXTRAIT DE LA PAGE HTML RESULTANTE

bon déjà : name="pxht_prod[$id_pro]" name="prixachat_prod[$id_pro]" ???
comment veut-tu adresser un tel champ ? il faudait connaitre la valeur  de id_pro ????
je ne parle pas de la variable pghp, mais si dans le nom d'une
variable tu mets un contenu variable... tu ne peut rien en faire
mets les mêmes name !

<form name="prx">
    <input name="prixachat" onchange="conv(0);" type="text" value="$site[prixachat_prod]" size="6">
    <input name="prixglob" type="text" size="6">
    <input name="pxht" type="text" value="$site[pxht_prod]" size="6">
    <br />
    <input name="prixachat" onchange="conv(1);" type="text" value="$site[prixachat_prod]" size="6">
    <input name="prixglob" type="text" size="6">
    <input name="pxht" type="text" value="$site[pxht_prod]" size="6">
</form>


et dans ta fonction conv(index)  utilise
document.prx.prixachat[index].value, document.prx.prixglob[index].value  et
document.prx.pxht[index].value

perso d'ailleurs comme tu ve traiter ça en php je suppose
j'utiliserais en html : name="prixachat[]" name="prixglob[]" name="pxht[]"
en javascript : 
document.prx['prixachat[]'][index].value,
document.prx['prixglob[]'][index].value  et
document.prx['pxht[]'][index].value
et coté php  $_POST['prixachat'] $_POST['prixglob'] $_POST['pxht'] sont des array


il te restera à résoudre le cas ou 1 seule ligne est générée !!!
car de ce cas [index] ne fonctionne pas
 je fais toujours (?) pareil :
  je crée une ligne bidon cachée et je commence mes boucles
  à 1 au lieu de 0


[mon Site][M'écrire]Bul

vendredi 6 février 2009 à 10:55:13 | Re : Comment inclure une variable dans une fonction javascript ?

Pacoch

oula, ça devient compliqué..
Les variables php dans les name et value sont obligatoires pour différencier l'article.. Ce qui donne en html par exemple : (en prenant le code de deux articles !)

<form action="edit_prod.php?id_pro=1387&cat=110" method="post" name="prx">
<input name="prixachat_prod[1387]" onchange="conv(this.value);" type="text" value="49.90" size="6">
<input name="prixglob" type="text" size="6" disabled>
<input name="pxht_prod[1387]" type="text" value="89.00" size="6">
</form>

<form action="edit_prod.php?id_pro=1388&cat=110" method="post" name="prx">
<input name="prixachat_prod[1388]" onchange="conv(this.value);" type="text" value="295.00" size="6">
<input name="prixglob" type="text" size="6" disabled>
<input name="pxht_prod[1388]" type="text" value="385.00" size="6">
</form>

Le post et la mise à jour dans la DB c'est tout bon.. pas de soucis de ce côté là. Tout ce que j'aimerais, c'est que le champ prixglob me donne le prix indicatif une fois prixachat_prod renseigné.

Maintenant, je pense qu'il suffit de faire que prixglob est le name (pour le premier exemple ci-dessus) : prixglob[1387] ce qui n'est pas un problème en soit.. Mais je ne sais pas le mettre dans le script javascript..

Pas simple a expliquer.. désolé..
Merci encore !
Pascal
vendredi 6 février 2009 à 11:08:51 | Re : Comment inclure une variable dans une fonction javascript ?

Bul3

Membre Club
mais non ce n'est pas obligatoire !
tu mets ce que tu veux comme name !
et je tente de t'expliquer, de te convaincre de :
comment tu veux accéder à un name que tu ne connais pas ????
et coté javascript et coté php ?
( on peut, mais c'est bien trop compliqué et pas fiable ! )

>>Pas simple a expliquer...
j'ai compris ce qu'il faut faire
mais : je n'arrive pas à te faire comprende comment faire

alors que c'est tout simple :
met le même name pour les mêmes champs !

maintenant, tu fais comme tu veux.
prend le temps de me relire, c'est tout

[mon Site][M'écrire]Bul

vendredi 6 février 2009 à 11:12:59 | Re : Comment inclure une variable dans une fonction javascript ?

Bul3

Membre Club
et si tu veux "récupérer" le n° de l'article en php
met le dans dans champs hidden associés aux autres et point barre



1 2 3

Cette discussion est classée dans : script, javascript, valeur, taux, parsefloat


Répondre à ce message

Sujets en rapport avec ce message

Recherche script javascript pour menu deroulant [ par devess ] Bonjour,J'ai cherché mais je n'ai pas trouvé de script javascript pour faire des menus déroulants avec un affichage d'une fenêtre lors du passage curs Recherche script javascript pour menu deroulant [ par devess ] Bonjour,J'ai cherché mais je n'ai pas trouvé de script javascript pour faire des menus déroulants avec un affichage d'une fenêtre lors du passage curs /!\ Aide sur le Javascript /!\ [ par visualbasicscript ] Aidez moi !!!!!!!! J'aimerai savoir si on peut executer le javascript sans le mettre sur une page Htmlpar exemple si je vais sous le b Spécialiste Javascript : LA QUESTION ! (valeur scroll sous ie5.0) [ par Jin ] Quelqu'un connaîtrait-il l'équivalent de document.body.scrollTopdocument.body.scrollLeft(Valeur de la position des barres de défilements)sous internet donnée une valeur a un champ à partir d'un script JavaScript [ par clk ] Lire un script en javascript [ par jejejeje ] ecrire dans un le code html avec le script javascript [ par clk ] Du php dans un script javascript. Est ce possible? [ par bouchardg ] Bonjour,Est ce qu'il est possible d'incorporer du php dans un script javascript?Par exemple: j'aimerai faire un menu javascript pour des films, et je Récupérer la valeur d'une variable [ par milouchouchou ] Bonjour tout le mondeDans le but d'améliorer les stats de mon site, j'aimerais pouvoir récupérer la valeur d'un script (élémentaire, mais je n'y arriv du php dans javascript [ par nikos283 ] Bonjour,J'ai un tableau $test ou il y a des valeur récupérées depuis un script php, et j'aimerai l'exploiter dans mon script javascript, comment faire


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales