|
Voir le sujet précédent :: Voir le sujet suivant
|
| Auteur |
Message |
| |
|
dadovb WRInaute accro

Inscrit le: 22 Nov 2005 Messages: 1312
|
Posté le : Lun Déc 19, 2005 10:59 Sujet du message: Affectation d'une valeur a une variable avec getElementById |
|
|
Bonjour à tous,
J'ai un problème avec du javascript et j'arrive pas à m'en sortir donc je viens mander votre aide :
En fait je fais une boucle php pour affiche un certains nombre d'articles, et pour chacun d'eux je propose soit de le metre en vente soit de le retirer de la vente grace à un lien javascript qui lance une fonction javascript. Le problème ce qu'il faudrait que j'utilise getElementById, car sou mozilla, ca marche (j'ai juste un avertissement dans l aconsole javascript) mais ous explorer (evidemment...) ca ne marche pas du tout
Stop le blabla, voilà le code :
| Code: |
<td valign="middle"><div align="left">
<img src="<? echo $site?>images/triangle.gif" border="0"><a href="javascript:;" onClick="window.open('<? echo $site?>photos/statphoto.php?idphoto=<? echo $id_photo?>', 'stat', 'height=400, width=550, top=10, left=10')" class="petitstyle">Statistiques</a><br>
<? if($vente==1){?>
<img src="<? echo $site?>images/triangle.gif" border="0"><a href="javascript:{document.<? echo $nomformchang ?>.vente.value=0}; changer(<? echo $nomformchang ?>)" class="petitstyle">Retirer de la vente</a>
<? }else{ ?>
<img src="<? echo $site?>images/triangle.gif" border="0"><a href="javascript:{document.<? echo $nomformchang ?>.vente.value=1}; changer2(<? echo $nomformchang ?>)" class="petitstyle">Mettre en vente</a>
<? }?>
<br>
<a href="javascript:;" onClick="supprimer(<? echo $nomformsupp; ?>)" class="petitstyle"><img src="<? echo $site?>images/triangle.gif" border="0">Supprimer<!--<img src="<? echo($site."Fr/images/suppr_ph_panier.gif")?>" border=0 title="supprimer">--></a>
</div>
<form action="dispo.php" method="post" name="<? echo $nomformchang?>">
<input name="id_photo" type="hidden" value="<? echo $id_photo?>">
<input name="vente" type="hidden" value="">
</form> |
le problème vient de
| Code: |
| <a href="javascript:{document.<? echo $nomformchang ?>.vente.value=0}; changer(<? echo $nomformchang ?>)" |
. $nomformchang est une variable contenant l'id d emon article.
La console javasript veut que j'utilise getElementByID, mais je vois pas comment faire....
Merci d'avance |
|
| |
|
 |
zarlboro WRInaute impliqué

Inscrit le: 13 Juil 2004 Messages: 284
|
Posté le : Lun Déc 19, 2005 11:12 Sujet du message: Affectation d'une valeur a une variable avec getElementById |
|
|
essaye ça :
document.getElementById("<?=$nomformchang?>").vente.value=0;
n'oublie pas de mettre aussi :
<form ... id="<?=$nomformchang?>">
..
..
</form>
c'est l'attribut id qu'il faut utiliser pas name. |
|
| |
|
 |
dadovb WRInaute accro

Inscrit le: 22 Nov 2005 Messages: 1312
|
Posté le : Lun Déc 19, 2005 11:26 Sujet du message: Affectation d'une valeur a une variable avec getElementById |
|
|
J'ai rajouté ca :
document.getElementById("<?$nomformchang?>").vente.value=0;
et j'ai remplacé name par id dans mon formulaire et ca ma fait une jolie exception :
uncaught exception : (Exception... "Not enough arguments [nsIDOMHTMLDocument.getElementById]" nsresult: "0x80570001 (NS_ERROR_XPX_NOT_ENOUGH_ARGS)" location : "JS frame :: javascript:{document.getElementById().vente.value=0;};changer(chang4506) :: <TOP_LEVEL> :: line 1" data: no]
dans la console javascript..
Merci d'avance pour vos conseils..;D |
|
| |
|
 |
oxado Nouveau WRInaute
Inscrit le: 24 Nov 2005 Messages: 35
|
Posté le : Lun Déc 19, 2005 11:41 Sujet du message: Re: Affectation d'une valeur a une variable avec getElementB |
|
|
| dadovb a écrit: |
La console javasript veut que j'utilise getElementByID, mais je vois pas comment faire....
|
Comme il y a plusieurs méthodes différentes pour accéder aux objets suivant le browser, getElementById n'est pas non plus la solution idéale. Voir: http://www.quirksmode.org/js/dhtmloptions.html pour une fonction qui marche à tous les coups. |
|
| |
|
 |
zarlboro WRInaute impliqué

Inscrit le: 13 Juil 2004 Messages: 284
|
Posté le : Lun Déc 19, 2005 11:44 Sujet du message: Affectation d'une valeur a une variable avec getElementById |
|
|
| dadovb a écrit: |
J'ai rajouté ca :
document.getElementById("<?$nomformchang?>").vente.value=0;
et j'ai remplacé name par id dans mon formulaire et ca ma fait une jolie exception :
uncaught exception : (Exception... "Not enough arguments [nsIDOMHTMLDocument.getElementById]" nsresult: "0x80570001 (NS_ERROR_XPX_NOT_ENOUGH_ARGS)" location : "JS frame :: javascript:{document.getElementById().vente.value=0;};changer(chang4506) :: <TOP_LEVEL> :: line 1" data: no]
dans la console javascript..
Merci d'avance pour vos conseils..;D |
cette erreur veut dire qu'il n'y a rien en paramètre de getElementById :
tu as oublié de mettre le caractère egale après le <? :
document.getElementById("<?=$nomformchang?>").vente.value=0; |
|
| |
|
 |
dadovb WRInaute accro

Inscrit le: 22 Nov 2005 Messages: 1312
|
Posté le : Lun Déc 19, 2005 12:02 Sujet du message: Affectation d'une valeur a une variable avec getElementById |
|
|
yes, ca marche, merci beaucoup pour votre aide...
Et a bientot, pour de nouveaux bugs... |
|
| |
|
 |
dadovb WRInaute accro

Inscrit le: 22 Nov 2005 Messages: 1312
|
Posté le : Lun Déc 19, 2005 12:12 Sujet du message: Affectation d'une valeur a une variable avec getElementById |
|
|
ah en fait, ca ne marche que sous firefox, explorer refuse toujours de lancer la fonction javascript. Voilà le message de la console javascript :
Avertissement : Elément référencé par son ID/NAME dans le contexte global. Utilisez la propriété standard du W3C document.getElmentById() à la place.
Fichier source : javascript:{document.getElementById("chang4507").vente.value=1}; changer2(chang4507)'
Je comprends pas où peut etre le problème, changer2 est une fonction que j'ai crée.
Merci d'avance pour vos conseilsi |
|
| |
|
 |
| |
|
|