Passer les paramètres à une fct javascript

phx1988 -  
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour tout le monde

J'ai une fonction javascript:

<script language="Javascript" type="text/javascript">

var op=-1;
function decremente(op1, []tab){
if(op==-1) op=op1;
op=parseInt(op)-3;
//document.getElementById('description').innerHTML=op;
document.write('<img src="image.jsp?iddd=tab[op]" width="300" height="300" />'); // j'arrive pas à afficher l'image :s
if(op==0) alert('finnn');
}

</script>



où op est un entier et []tab est un tableau d'entiers,
comment je peux afficher mon image en passant les paramètres de la fonction à la balise img src??


voici l'appel de la méthode javascript:

<a href="javascript:decremente(<%= op, []tab %>)" style="width: 90px; position:absolute;top:380px;left:30px;">Précédent</a>


merci d'avance,
A voir également:

7 réponses

Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
function decremente(op1, tab){ 


il ne faut pas les [] devant tab

si l'argument 2 (est un array alors javascript recevra un array

ensuite il faut que l'array tab soit de cette forme:

tab[1]='image1.jpeg';
tab[1]='image2.jpeg'; etc..

le tab contient les src des images

et
document.write('<img src="'+tab[op]+'" width="300" height="300" />');
0
phx1988
 
Merci beaucoup Alain

il me reste le problème de l'appel de cette fonction, quand j'essaie de l'appeler à travers:

[CODE]
<a href="javascript:decremente(<%= op, tab %>)" style="width: 90px; position:absolute;top:380px;left:30px;">Précédent</a>
[/CODE]

je reçois le message d'erreur suivant :
[CODE]
The method print(int) in the type JspWriter is not applicable for the arguments (int, int[])
[/CODE]

t'as une solution à ça?
merci
0
phx1988
 
Merci beaucoup Alain
il me reste le problème de l'appel de cette fonction, quand j'essaie de l'appeler à travers
<a href="javascript:decremente(<%= op, tab %>)" style="width: 90px; position:absolute;top:380px;left:30px;">Précédent</a>

je reçois le message d'erreur suivant :
The method print(int) in the type JspWriter is not applicable for the arguments (int, int[])

t'as une solution à ça?
merci
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
ça c'est de l'asp et je ne connait pas du tout
0

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

Posez votre question
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
une solution purement javascript

<script language="Javascript" type="text/javascript">
//initialisation d'un array contenant tous les src des images il doit y en avoir autant que ton op
var tab=new Array();
tab[1]="image5.jpeg";
tab[2]="image4.jpeg";
tab[3]="image3.jpeg";
tab[4]="image2.jpeg";
tab[5]="image1.jpeg";
var op=-1;
function decremente(op1){
if(op==-1) op=op1;
op=parseInt(op)-3;
//document.getElementById('description').innerHTML=op;
document.write('<img src="'+tab[op]+'" width="300" height="300" />'); // j'arrive pas à afficher l'image :s
if(op==0) alert('finnn');
}

</script>

et l'appel

<a href="javascript:decremente('5')" style="width: 90px; position:absolute;top:380px;left:30px;">Précédent</a>
0
phx1988
 
merci bcp pour ta réponse, ça marche
mais j'ai un petit problème : je souhaite garder le css de la page, or une fois la fct javascript executé, je ne vois afficher que les images (les boutons, les étiquettes etc. disparaissent !!)
t'as une solution?
merci d'avance
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
normal c'est le document.whrite qui "écrase tout"

fais avec un innerHTML

tu mets un <div id="zone_images"></div> à l'endroit de ta page où tu veux les avoir

et dans la fct JS remplaces

document.write('<img src="'+tab[op]+'" width="300" height="300" />');

par:

document.getElementById('zone_images').innerHTML = '<img src="'+tab[op]+'" width="300" height="300" />'
0