Formation par Olivier Duffez

Formation au référencement par Olivier Duffez, créateur de WebRankInfo !
Une formule efficace alliant théorie et pratique, avec une haute disponibilité des intervenants
Cette formule a déjà convaincu plusieurs centaines d'entreprises, pourquoi pas vous ?
Réservez vite votre place en ligne (convention possible pour imputer sur le budget formation)

Formation référencement Marseille

Affectation d'une valeur a une variable avec getElementById

Poster un nouveau sujet Imprimer cette discussion    Forum -> Développement d'un site Web   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
dadovb
WRInaute accro
WRInaute accro

Inscrit le: 22 Nov 2005
Messages: 1312

URL permanente de ce messagePosté 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">
         &nbsp;&nbsp;&nbsp;&nbsp;<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){?>
         &nbsp;&nbsp;&nbsp;&nbsp;<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{ ?>
         &nbsp;&nbsp;&nbsp;&nbsp;<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>
         &nbsp;&nbsp;&nbsp;&nbsp;<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
 
dadovb Visiter le site web du posteur
zarlboro
WRInaute impliqué
WRInaute impliqué

Inscrit le: 13 Juil 2004
Messages: 284

URL permanente de ce messagePosté 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.
 
zarlboro Visiter le site web du posteur
dadovb
WRInaute accro
WRInaute accro

Inscrit le: 22 Nov 2005
Messages: 1312

URL permanente de ce messagePosté 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
 
dadovb Visiter le site web du posteur
oxado
Nouveau WRInaute

Inscrit le: 24 Nov 2005
Messages: 35

URL permanente de ce messagePosté 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.
 
oxado Visiter le site web du posteur
zarlboro
WRInaute impliqué
WRInaute impliqué

Inscrit le: 13 Juil 2004
Messages: 284

URL permanente de ce messagePosté 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;
 
zarlboro Visiter le site web du posteur
dadovb
WRInaute accro
WRInaute accro

Inscrit le: 22 Nov 2005
Messages: 1312

URL permanente de ce messagePosté 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 Visiter le site web du posteur
dadovb
WRInaute accro
WRInaute accro

Inscrit le: 22 Nov 2005
Messages: 1312

URL permanente de ce messagePosté 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
 
dadovb Visiter le site web du posteur
 
Montrer les messages depuis:   
Revenir en haut    Forum -> Développement d'un site Web Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1 - 
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort