Probleme javascript / Java

Résolu
Anysse Messages postés 29 Date d'inscription mercredi 27 octobre 2004 Statut Membre Dernière intervention 17 août 2007 - 13 août 2007 à 16:21
Anysse Messages postés 29 Date d'inscription mercredi 27 octobre 2004 Statut Membre Dernière intervention 17 août 2007 - 14 août 2007 à 00:35
Bonjour,
dans le cadre du edveloppement d'un application web
j'aimerais pouvoir afficher dans une jsp le contenu d'un tableau u :

<%
Bdd b = Bdd.getInstance();
int y;
//User u = new User();
User [] u =new User[100];
Object tab [] = b.getUsers().toArray();
int a=tab.length;
int i=0;

    try{
    for(i=0;i

Puis ensuite :

<script language="javascript">
var c=<%=a%>;
var tab = new Array(c);
for(x=0;x<c;x++)
{
tab[x]="<%=u[x].getNom()%>";
document.write(tab[x]+"");
<%
x++;
%>
}
</script>

Mais il semble qu'il y ai un probleme avec l'incrementation de la
variable x (java), j'ai essaié de plusieurs maniere mais toujours la
meme chose la variable java ne s'incremente pas, comme si le bout de
code java introduit dans le script javascript n'etait pas reconnu, lors
cela me parait bizzare puisque le bout de code java qui permet de
recuperer le contenu du tableau est bien prise en compte, seul
l'incrementation pose probleme.


Voila je n'arrive pas a regler ce probleme

Quelqu'un pourrait-il m'aider ?

Merci d'avance !

11 réponses

Anysse Messages postés 29 Date d'inscription mercredi 27 octobre 2004 Statut Membre Dernière intervention 17 août 2007
13 août 2007 à 18:38
Re
finalement je suis passé par la balise struts <logic:iterate>
je n'avais pas reussi a l'utiliser mais apres un petit peu de galere j'ai reussi a la l'utiliser
ca donne ca :
<%
Bdd b = Bdd.getInstance();
int y;
Collection c=b.getUsers();
int i=0;
try{
  for(i=0;i

puis  :

<logic:iterate collection="<%=c%>" id="user" type="go.form.User">
<tr>
<td> <%=user.getNom()%> </td>
..................................................
</tr>
</logic:iterate>

Voila merci pour ton aide !

Sinon j'aurai aimé malgré tout comprendre le pourquoi de mon precedent probleme

Je t'ai deja tout envoié, il n'y avait rien de plus dans ma page.
Seulement les deux blocs : java et javascript
Le bloc java recupere de ma BDD un certain nombre de données et j'ai testé la reception se fait correctement.
Ensuite ne pouvant ( ou ne sachant pas tout simplement) afficher ce tableau java  de maniere dynamique avec de l'html ( enfin mettre du code html dans du code java) j'ai voulu passer par un tableau javascript pour utiliser le document.write()
Et c'est comme ca que lorsque je teste avec documente.write le contenu du tableau il reconnait bien avec :
    "var c=<%=a%>;
    var tab = new Array(c);"
le contenu de la variable a (j'ai testé il y a la bonen valeur dedans)
Sinon la boucle m'affiche a chaque fois le premiere objet du tableau, parcequ'il n'y a pas d'incrementation, enfin elle ne se fait pas :
    <%=u[x].getNom()%>

Voila, sinon je suis debutant en javascript, enfin en programmation web en general, et j'ai pensé au debut qu'il y avait peut etre certaines contraintes dans l'integration de code java dans un code javascript.
Enfin je ne sais pas c'est tout de meme bizzare vu que tout le reste marche.
3
Anysse Messages postés 29 Date d'inscription mercredi 27 octobre 2004 Statut Membre Dernière intervention 17 août 2007
14 août 2007 à 00:35
Re
oki, je ne sais pas ce que c'est mmais je vais me renseigner.
Merci encore pour ta sollicitation.
Bonne chance et bonne continuation.
++
3
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
13 août 2007 à 16:43
Bonjour,

   si déjà tu pouvais nous mettre la page html générée et pas le asp,
   ça aiderait. sinon comment on sait ce que contient <%=a%> par exemple.

     une remarque quand même : document.write(tab[x]+"");
      si le page a été totalement interprétée, document.write 
         l'efface, y compris le javascript.

<hr />
         Cordialement       Bul [mon Site] [M'écrire]
<hr />Généralement, c'est absurde de généraliser.

/STRONG>
0
Anysse Messages postés 29 Date d'inscription mercredi 27 octobre 2004 Statut Membre Dernière intervention 17 août 2007
13 août 2007 à 16:51
Bonjour, tout d'abord merci pour ta reponse

Sinon je n'ai aps compris ce que tu veu dire par :
"si déjà tu pouvais nous mettre la page html générée et pas le asp"
 
Concernant <%=a%> ca contient la taille du tableau ( comme c'est ecrit dans le code : int a=tab.length; )

Je n'ai pas non plus compris : "




si le page a été totalement interprétée, document.write 

Voila merci quand meme. l'efface, y compris le javascript."
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
13 août 2007 à 17:36
Le problème vient probablement du fait que tu as confondu les sections de code javascript et java :

for(x=0;x<c;x++) // on est en javascript, x est defini

<%=u[x].getNom()%> // on est en java, x n'existe pas
0
Anysse Messages postés 29 Date d'inscription mercredi 27 octobre 2004 Statut Membre Dernière intervention 17 août 2007
13 août 2007 à 17:48
Merci,
j'ai oublié de preciser que j'avais defini la variable x java un peu plus haut dans mon code, le probleme ne vient donc pas de la... :(
0
Anysse Messages postés 29 Date d'inscription mercredi 27 octobre 2004 Statut Membre Dernière intervention 17 août 2007
13 août 2007 à 17:48
Merci,
j'ai oublié de preciser que j'avais defini la variable x java un peu plus haut dans mon code, le probleme ne vient donc pas de la... :(
0
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
13 août 2007 à 18:08
{
tab[x]="<%=u[x++].getNom()%>";
document.write(tab[x]+" x=<%=x%>");
}
essayes avec ça pour voir si le pb vient de x
0
Anysse Messages postés 29 Date d'inscription mercredi 27 octobre 2004 Statut Membre Dernière intervention 17 août 2007
13 août 2007 à 18:11
Idem, j'avais deja essaie, de l'inclure dedans
mais il ne reconnait pas l'incrementation
0
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
13 août 2007 à 18:18
ben donnes tout le code de la page (formatté AVEC INDENTATION stp sinon je ne fais même pas l'effort de lire) que je vois ce qui se passe
0
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
13 août 2007 à 18:46
Si tu dis que tout ton code est là alors je réitère ma question :

Où est l'instruction java qui défini la variable x ?

Enfin bon de toute façon, tu as résolu ton problème, donc finalement la réponse n'a plus trop d'importance.
Sinon, un conseil, que tu prends ou que tu prends pas. Tournes toi vers la syntaxe el (expression langage) pour l'écriture des jsp. le code est plus court et plus naturel à lire.
0
Rejoignez-nous
A voir également