nuclearprout
Messages postés43Date d'inscriptionsamedi 11 décembre 2004StatutMembreDernière intervention19 mai 2009
-
15 déc. 2007 à 15:41
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 2013
-
15 déc. 2007 à 16:51
Bonjour !
J'ai un gros problème de concaténation de variable, je suis à deux doigts de faire mon truc mais en désespoir de cause, je me retourne vers vous autres. Voici le code qui me pose soucis, je le remets dans son contexte pour qu'on comprenne bien.
function puker()
{
pre_puker = new Array();
var quant = document.getElementById("feed_quantity").value;
var qual = document.getElementById("feed_data").value;
if (isNaN(document.getElementById("feed_quantity").value)== true) {
pre_puker.push("Com' ON ! We asked a number...");
}
else if(document.getElementById("feed_quantity").value.length >= 5) {
pre_puker.push("ATTENTION : You asked for a lot of DEGENERATIONS >> Your machine may buzz !");
}
if (pre_puker.length > 0) {
var output = pre_puker.join("\n");
alert(output);
}
else {
var puke = new Array();
puke.push(qual);
puke.join(" ");
var colorizer = new Array();
colorizer[1] = "#66CC00";
colorizer[2] = "#66CC33";
colorizer[3] = "#66CC66";
colorizer[4] = "#669900";
colorizer[5] = "#669933";
colorizer[6] = "#66FF00";
colorizer[7] = "#66FF33";
colorizer[8] = "#33CC00";
colorizer[9] = "#33CC33";
colorizer[10] = "#339900";
colorizer[11] = "#336600";
colorizer[12] = "#99CC00";
colorizer[13] = "#999900";
colorizer[14] = "#99FF00";
colorizer[15] = "#00FF99";
colorizer[16] = "#00FF33";
for (var i = 1; i <= quant; i++) {
var sort_code = (Math.round((Math.random()*15)+1));
var sort_color = colorizer[sort_code];
var sort_pt = (Math.round((Math.random()*10)+6));
puke = puke + " "+qual+" <\/span>";
document.getElementById("puker").innerHTML = puke;
}
}
}
C'est simple, j'ai deux champs ; un dont l'id est feed_quantity, un autre dont l'id est feed_data. Dans l'un on tape une chaîne de caractères, dans l'autre un nombre et ça vous recrache (puke) le tout dans une la div "puker". Jusque là, rien de bien compliquer, néanmoins, mon soucis est la pitite ligne que vous avez dû remarquer...
puke = puke + " "+qual+" <\/span>";
Cette dernière ligne ne fait pas bugger le code, mais ne fait pas ce que je voudrais non plus, c'est à dire qu'elle ne me permet pas d'attribuer au sein de chaque span une des couleurs du tableau colorizer et ce, de façon aléatoire.
Exemple d'une source DOM lorsque la fonction est éxecutée :
<span style="font-size: 12pt;" color:#66cc00=""> ENTER SOMETHING HERE </span>
Vous remarquerez donc que les guillements ne sont pas au bon endroit. Voilà, j'ai juste ça à régler, peut-être que ce que j'éssaie de faire n'est pas du tout possible, mais je pense que ça l'est.
Merci à tous !
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 15 déc. 2007 à 15:56
Bonjour,
tu utilises une function et un id qui ont le même nom ( puker )
remplacer document.getElementById("pukerxxx").innerHTML = puke;
color pas dans le style
puke += " "+qual+" <\/span>";
ça devrait le faire ( enfin... mieux, sans préjuger du reste )
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 15 déc. 2007 à 15:56
Bonjour,
tu utilises une function et un id qui ont le même nom ( puker )
remplacer document.getElementById("pukerxxx").innerHTML = puke;
color pas dans le style
puke += " "+qual+" <\/span>";
ça devrait le faire ( enfin... mieux, sans préjuger du reste )
nuclearprout
Messages postés43Date d'inscriptionsamedi 11 décembre 2004StatutMembreDernière intervention19 mai 2009 15 déc. 2007 à 16:15
Merci beaucoup chef !
Pour le même nom entre l'id et la fonction, j'avais pas fait attention et ne pensais même pas que cela pouvait être problématique (si ce n'est question propreté de code). Pour l'opérateur += , c'est en effet bien moins bête aussi. Par contre, j'ai vraiment du mal à comprendre la logique de la concaténation (c'est bien de cela dont il s'agit non ?). Si tu connais une ressource ou un site qui détaille ça en profondeur et qui permet de bien en comprenre la logique, je te serai très reconnaissant de bien vouloir m'en fournir l'URL.
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 15 déc. 2007 à 16:51
quand à l'ID et le nom de la fonction, j'ai tellement vu de
problèmes de ce style... dans tous les langages !
( pas sûr que ça passe d'ailleurs en js ? )
<hr /> Cordialement Bul [mon Site] [M'écrire]