Je dois rendre dynamique les parties de codes qui sont en gras, car mon but est de les remplir avec un requête sql à la fin.
<script type= "text/javascript">
var g = new MWJ_graph(700,300,MWJ_stacked,true,false);
g.addDataSet('<% =rscamem(25)%>','', [90,90,85,63,90,85] );
g.addDataSet('<% =rscamem(26)%>','',[10,10,15,37,10,15]);
g.setTitles('','','%');
g.setXAxis('Frais Financier','Produits financiers','Frais personnel','Charges récupérées','Produit,'Autres');
g.setYAxis(10);
g.buildGraph();
</script>
Voici une des fonction derrières
this.setXAxis = function (){
//je vous passe le blabla
}
Vu que je ne connais pas le nombre de champs qui sera générer par ma requête.
Je ne peux pas faire
g.setXAxis(champ1 , champ2,champ3,champ4,champ5,champ6);
J'ai tout premièrement essayé de les concaténer et de passer une string
var test =[10,10,15,37,10,15]
g.addDataSet('<% =rscamem(26)%>','',test);
Cela n'a pas fonctionné
Sinon je n'arrive pas à trouver comment passer une vecteur en paramètre, en c++ c'est facile tu utilises un pointeur, mais je suis perdue en javascript,
Voici ce que j'ai essayé
var test=new Array(6);
test[0]='Frais Financier'
test[1]='Produits financiers'
test[2]='Frais personnel'
test[3]='Charges récupérées'
test[4]='Produit et accessoires'
test[5]='Autres'
g.setXAxis.apply(this,test);
g.setXAxis.apphy(test);
g.setXAxis(test);
Sinon peut-être qu'il y a une autre façon de concaténer les champs, mais je ne vois pas comment.
Merci beaucoup de votre aide à l'avance.
A voir également:
Passer un tableau 2d en paramètre c
Passer un tableau en paramètre java - Meilleures réponses
Je n'ai eu besoin que de modifier l'entête de mes fonctions l'entête "toto" pour pouvoir passer mon vecteur en paramètre en rendre mon site dynamique.
this.setXAxis = function ( toto ){
//je vous passe le blabla
}
Mais dans ta 2ième partie de solution comment pourrais-je concaténer mes arguments étant donné que je ne connais pas leur nombre?
exemple:
test2( for(i =0;i<toto.length();i++){toto[i]+','})
De toute façon la première solution fonctionne. Je suis seulement curieuse.
Merci beaucoup.
>>comment pourrais-je concaténer mes arguments
on pourrait aussi effectivement, et les éclater avant utilisation.
( mais bof car 2 traitements à faire )
var res="";
for ( var n=0;n<limite;n++ )
{
res+=poste[n]+"\t");
}
passer res.substr(0,res.length-1);
et dans la fonction faire un split sur "\t"
>>étant donné que je ne connais pas leur nombre
leur nombre c'est la taille du tableau
toto.length si un tableau est passé
arguments.lengts si on exploite le tableau des paramètres passés
ou alors je n'ai pas compris ?