# Java > Dveloppement Web en Java > Servlets/JSP >  Changer couleur de background

## amani1

bonjour
je cherche a changer le fond de ma page on cliquant sur un lien , le lien  est dynamique il change selon 2 variables mois et annee je travaille avec jsp 

voici le code de mon jsp


```

```


les menus sont stock dans une liste ils semblent  janvier 2014,fevrier 2014....
je cherche lorsque je choisi le lien janvier 2014 le couleur du fond de ma page sera rouge si je choisi fevrier 2014 la couleur change en bleu 

j'ai essayer de faire une fonction java script 


```

```


mais lorsque j'appelle cette fonction rien ne change

----------


## jeffray03

tu dois faire un truc de ce genre:


```
<body style='background-color: ${summary.color}'>
```

et changer simplement la valeur de summary.color


Eric

----------


## amani1

j'ai essayer a mais le menu disparait

----------


## jeffray03

comment est ce que tu las fait?
est ce possible de voir le code?
Eric

----------


## jeffray03

ah je viens de mapercevoir du probleme:
question:
comment est ce que tu lui transmet la valeur du mois et de lanne?
sinon il nentrera jamais dans tes ifs.
et du coup rien ne changera.

Eric

----------


## amani1

j'ai ajout a a ma page JSP 



```

```


j'ai pas compris en fait ${summary.color} est qu'il s'agit d'une variable java script??

----------


## amani1

le mois et l'annee son transmet a partir de servlet d'authentification 

au niveau de ma page jsp j'ai recuperer ces 2 variables 


```

```

----------


## jeffray03

voici un exemple que jai fait avec que du html, tu devrais pouvoir ladapter avec du jsp:


```

```

et si tu ny arrive pas peux-tu nous envoyer ton code (javascript et jsp)
Eric

----------


## VirgApps

Bonjour,
il faut que tu passes tes variable "mois" et "annee" dans ta fonction javascript.


```

```

que tu appelleras par


```

```

Ensuite je te conseille plutot d'appliquer une classe  ton body, ca te permettra de dfinir la couleur avec une feuille de style


```

```

et dans ta feuille de style


```

```

----------


## amani1

j'ai essayer de changer mais rien ne change ma page jsp n'execute pas le code java script j'ai mis mes 2 fichiers dans la mme repertoire et j'ai ajouter a a ma page JSP



```

```

----------


## jeffray03

est ce que ton fichier .js, se trouve dans le meme repertoire que ton application ton fichier jsp?

----------


## amani1

oui dans le mme rpertoire

----------


## amani1

j'ai essayer de faire en sorte que les liens soient statique et du coup j'ai changer



```

```


mais lorsque je clique sur le lien la couleur du fond  change mais disparu et moi je veut qu'elle reste  mais je sais pas pourquoi est ce que je dois changer le onclick par un autre evenements??

----------


## VirgApps

Ce qui peut poser problme c'est que tu as une fonction javascript sur une balise lien.
Autrement dit la fonction javascript va sexcuter (la couleur change) puis tu seras redirig sur une autre page (excution du lien) et du coup tu perd le changement de couleur.

Les liens dans ta liste ne servent qu' changer la couleur de fond ou galement  changer de page ?

----------


## amani1

non il servent seulement a changer la couleur pas de redirection vers d'autres pages.
j'ai essayer de mettre mon code java script dans la balise li au lieu de celle de lien mais le resultat est le mme la couleur disparu

----------


## VirgApps

Oui il faut mettre le JavaScript sur le li mais galement supprimer la balise <a> car le lien sera tout de mme excut.


```

```

----------


## amani1

oui j'ai essayer a mais le problme c'est lorsque je clique sur un lien le nom de ce dernier s'affiche dans l'url une fois le <a> est supprimer le lien ne sera pas afficher et du coup je vais perdre l'information sur le lien affich y'a t'il d'autre solution qui me permet de rcuprer le nom de lien choisi

----------


## VirgApps

En fait ce qui va dterminer quelle mthode utilise c'est de savoir si tu repasses ct serveur quand tu cliques sur ta liste.
Si non : un javascript fera l'affaire
Si oui : il faut que tu rcupres les paramtres durant ton traitement ct serveur puis que tu les retournes lors de ton retour client puis avec un if en jstl tu peux dfinir quelle classe ajouter  ton body.

----------


## amani1

mon probleme est lorsque j'appelle mon fichier java script lors de lexcution rien ne change on dirait que le code java script ne sexcute pas malgr que j'ai mis 
a et les 2 fichiers jsp et js se trouvent dans la mme repertoire


```

```


et j'ai essay dcrire mon code java script  dans le fichier jsp en dure entre les balise


```

```


toujours je rencontre le mme problme  ::?:

----------


## -Dici-

Dans les paramtres de la fonction tu as mis anneer au lieu d'annee. Par ailleurs je ne m'y connais pas moi-mme en JS mais je sais que c'est trs chiant  dbuguer car quand a plante il ne se passe tout simplement rien en gnral.

Il faut utiliser des outils de dbugage (je pense que tous les navigateurs en embarquent si on cherche un peu) mais j'en dirai pas plus l-dessus car je ne les utilise pas.

----------


## VirgApps

Exact, avec Chrome ou Firefox tu pourras savoir si tu as une erreur javascript.
Ou plus basiquement tu peux mettre un 


```
alert('test');
```

au tout dbut de ton script voir dj s'il s'execute.

----------

