concatener des chaines - HTML/CSS - Programmation
Marsh Posté le 15-02-2008 à 13:07:13
En Javascript, la concaténation se fait habituellement avec le signe plus (+).
S'il s'agit d'un nombre, on peut le convertir en chaine avec toString().
Donc
param1 = 15
param2 = 34
param3 = 54
param4 = 68
truc=toString(param1)+"-"+toString(param2)+"-"+toString(param3)+"-"+toString(param4)
Marsh Posté le 15-02-2008 à 13:32:51
ok merci je vais essayer avec ca, sinon comme j apelle plusieurs fois la fonction je voudrais que soit stocker les arguments les uns a la suite des autres
un truc comme ca
myfunction(id) {
part = +id;
agregation = agregation +part;
return agregation;} // retour expecter 15-34-54-68
voila ca a l air simple comme ca, mais j y arrive pas
Marsh Posté le 15-02-2008 à 14:29:00
olivthill a écrit : En Javascript, la concaténation se fait habituellement avec le signe plus (+). |
euh
toString n'est pas une fonction mais une méthode de la classe Number.
On l'utilise donc ainsi:
Code :
|
Mais c'est complètement inutile car js caste automatique ton Number en String dans la cas d'une concaténation.
Il suffit donc d'écrire:
Code :
|
krifur a écrit : ok merci je vais essayer avec ca, sinon comme j apelle plusieurs fois la fonction je voudrais que soit stocker les arguments les uns a la suite des autres un truc comme ca |
Je sais pas ce que tu essayes de faire mais a mon avis tu prends pas le problème dans le bon sens...
Donc tu as quoi ? un ensemble de variables que tu souhaites concaténer entre elles?
Marsh Posté le 15-02-2008 à 14:42:32
OK, alors j'ai une gallerie de photo extraite d une base que j affiche classiquement(html) pour chaque photo j ajoute la fonction
onclick="myfunction('.$v['id'].')
et mon but et que cette fonction memorise tous les id qu on lui a passer, en gros toutes les photos sur lequelles l'utilisateur a cliquer, comme ca je peux recuperer cette variable et la passer a une fonction ajax par la suite qui fait des trucs en fonction de cette variable ...
La variable devrait ressembler a ca 15-34-54-68 mais impossible de faire une agregation/concatenation en javascript car je suis une tache dans ce language, j espere que c est realisable au moins ...
Marsh Posté le 15-02-2008 à 15:24:04
Tout d'abord, je te conseillerais de faire un tableau avec tes éléments cliqués, puis lorsque tu en as besoin faire un join de celui-ci pour obtenir ta chaine.
Ensuite tu as 2 solutions:
1/ tu crées une variable globale pour à ta page, à chaque appel de ta fonction tu la modifie:
Code :
|
2/tu te fais une class "maGallerie" avec une variable static pour stocker les elements cliqués
Maintenant, je me demande comment tu peux envisager de faire de l'ajax sans connaitre les bases du js
Marsh Posté le 15-02-2008 à 15:51:13
ok merci, en fait j avais trouver le coup de la variable globale j'avoue je suis pas encore au niveau en js, toujours sous estimer ce language mais je rattrape mon retard ... enfin la il faut encore que je transforme un chiffre en string et ca fonctionne pas...
mon embryon de code
var glob ="";
function myfunction(id) {
part = +id;
glob = glob +part +"-";
alert(+glob);
}
je croyais que javascript transformer les types de variables automatiquement en string si il le detecter comme si ?
merci
Marsh Posté le 15-02-2008 à 16:06:52
nan mais si tu faisais pas n'importe quoi aussi ...
Code :
|
Marsh Posté le 15-02-2008 à 16:30:02
merci mais il manque l agregation mais je te remercie qd meme
Marsh Posté le 15-02-2008 à 11:00:22
Salut a tous, j ai une fonction javascript myfunction(id) qui recoit un seul argument id (un chiffre)a chaque fois,
je voudrais qu a la fin de l execution de la function cela me retourne l aggregation de tous les id qui ont ete passer dans la function.
Par exemple , si je passe 15 ,34,54,68 il faudrait au a la fin je me retrouve avec un truc genre 15-34-54-68, je me bas avec string.contact mais ca a pas l air de marcher,
merci
Message édité par krifur le 15-02-2008 à 11:44:28