Guillemets et apostrophes alternés [Résolu/Fermé]

Signaler
Messages postés
19
Date d'inscription
mardi 22 avril 2014
Statut
Membre
Dernière intervention
28 juillet 2016
-
Messages postés
19
Date d'inscription
mardi 22 avril 2014
Statut
Membre
Dernière intervention
28 juillet 2016
-
Bonjour,

je revois actuellement du code pour ajouter une fonctionnalité et j'aurais un problème vis à vis du code d'un bouton qui est censé changer d'image quand je passe dessus ou quand je clique dessus. Le problème c'est qu'il ne le fait pas, j'ai repris la syntaxe de l'ancien code qui mettait tout le html dans une string pour le retourner en sortie et je crois que j'ai un problème sur les guillemets apostrophe.

$html .= '<input type="radio" id="etoileRadio1" title="'.JText::sprintf('PLG_VOTE_VOTE', '1').'" name="user_rating" value="1" />';

$html .= ' <label for="etoileRadio1"><img src="/images/etoileOFF.png" id="etoile1" onmouseover="javascript:affiche(1)" onmouseout="javascript:effacer()" onclick="javascript:affiche(1)"/></label>';


le problème vient du affiche et du effacer, si j'enleve "javascript:" ça ne change rien , si j'ecris comme le JText "'.affiche(1).'" ça ne change rien non plus
Dans le cas où j'ai ecris j'ai vraiment l'impression qu'il prend l'affiche et le effacer comme une chaine

Merci d'avance.

Notes : dans un css j'ai demandé à faire disparaitre les boutons radio, seul reste les images cliquable , en fait c'est pour un système de vote avec des étoiles et je ne peux pas enlever le type "input type="radio" "

Code du css et du javascript

$html.= '<STYLE type="text/css">
label {
display: inline-block;
cursor: pointer;
position: relative;

}
input[type=radio]{
display : none;
}
label:before {
content: "";
display: inline-block;
}
</STYLE>';

$html.='<script language="JavaScript" type="text/javascript">
function affiche(etoile)
{
if(etoile == 1)
{
//récupère la src des étoiles à afficher / cacher
this.getElementById("etoile2").src="/images/etoileOFF.png";
this.getElementById("etoile3").src="/images/etoileOFF.png";
this.getElementById("etoile4").src="/images/etoileOFF.png";

this.getElementById("etoile1").src="/images/etoileON.png";
}

else if(etoile == 2)
{
this.getElementById("etoile3").src="/images/etoileOFF.jpg";
this.getElementById("etoile4").src="/images/etoileOFF.png";

this.getElementById("etoile1").src="/images/etoileON.png";
this.getElementById("etoile2").src="/images/etoileON.png";
}

else if(etoile == 3)
{
this.getElementById("etoile4").src="/images/etoileOFF.png";

this.getElementById("etoile1").src="/images/etoileON.png";
this.getElementById("etoile2").src="/images/etoileON.png";
this.getElementById("etoile3").src="/images/etoileON.png";
}

else if(etoile == 4)
{
this.getElementById("etoile1").src="/images/etoileON.png";
this.getElementById("etoile2").src="/images/etoileON.png";
this.getElementById("etoile3").src="/images/etoileON.png";
this.getElementById("etoile4").src="/images/etoileON.png";
}
}
function effacer()
{
this.getElementById("etoile1").src="/images/etoileOFF.png";
this.getElementById("etoile2").src="/images/etoileOFF.png";
this.getElementById("etoile3").src="/images/etoileOFF.png";
this.getElementById("etoile4").src="/images/etoileOFF.png";
}
</script>';

1 réponse

Messages postés
169
Date d'inscription
mardi 10 janvier 2012
Statut
Membre
Dernière intervention
22 septembre 2016
20
bonjour,
que donne le code source de ta page quand elle est générée?
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 76687 internautes nous ont dit merci ce mois-ci

Messages postés
19
Date d'inscription
mardi 22 avril 2014
Statut
Membre
Dernière intervention
28 juillet 2016

Elle donne les 4 etoiles aligné non eclairé (le code que je donne c'est pour 1 mais y en a 4 à la suite) , il n'y a de probleme que lorsque je passe le curseur sur les boutons
je veux que ces etoiles s'allument quand je passe dessus ou que je clique dessus
au cas où je poste le code du Javascript

je vais le rajouter sur mon message initial
Messages postés
19
Date d'inscription
mardi 22 avril 2014
Statut
Membre
Dernière intervention
28 juillet 2016

désolé j'ai resolu le probleme, je mettais des this à la place de "document" (surement à force de faire des passages de langage à langage)