webForumDet fria alternativet

JSCRIPT dynamiska variablar

4 svar · 807 visningar · startad av fakenick!

fakenick!Medlem sedan juli 2002202 inlägg
#1

Hej!

Håller på att utveckla redan befintlig kod i ett ASP JSCRIPT-dokument.
Vad jag vill göra här är att skapa variablar utefter hur mycket innehåll som finns i en array (thevalue_array).

var num=0;
while (num < thevalue_array.length)
{
    var pie"+ num +" = new PCPie();
    pie"+ num +".value = "+ thevalue[num] +";
    pie"+ num +".bgColor = "+ thebg[num] +";
    pie"+ num +".label = ""+ thelabel[num] +"";
    diagramObj.pies.push(pie"+ num +");
    num+=1;
}

Felet jag får är:

Microsoft JScript compilation error '800a03ec'
Expected ';'
settings.asp, line 67
var pie"+ num +" = new PCPie();
------^

Någon som har något förslag vad man kan testa? Har försökt det mesta tycker jag, kombinera vbscript & jscript med mera, med mera.

Tack på förhand!

nitro2k01Medlem sedan aug. 20039 342 inlägg
#2

Nu hänger jag inte med... Vill du att din sersverside-kod ska generera kod åt klient-sidan? Varför vill du skapa variabler istället för en array?

fakenick!Medlem sedan juli 2002202 inlägg
#3

Så här är det:

JS-Scriptet skapar ett cirkeldiagram med bildkomponenten w3image.

var pie1 = new PCPie();
pie1.value = 100;
pie1.bgColor = 0xC0C0C0;
pie1.label = "En bit av cirkeldiagrammet";
diagramObj.pies.push(pie1);

var pie2 = new PCPie();
pie2.value = 50;
pie2.bgColor = 0x000000;
pie2.label = "En annan bit av cirkeldiagrammet";
diagramObj.pies.push(pie2);

Och då vill jag skicka in variablar till scriptet. Tillvägagångssättet jag hade tänkt göra detta var med querystrings och sedan splitta och loopa ut alla "tårtbitar" och värden jag vill ha med i cirkeldiagrammet.

Nu kanske du förstår lite mer hur jag skulle vilja ha det? :-)

liljaMedlem sedan juli 20041 183 inlägg
#4

Kan du inte bara göra så här?

var num=0;
while (num < thevalue_array.length)
{
    var pie = new PCPie();
    pie.value = "+ thevalue[num] +";
    pie.bgColor = "+ thebg[num] +";
    pie.label = ""+ thelabel[num] +"";
    diagramObj.pies.push(pie);
    num+=1;
}

Jag har bara testat vbscript så det kanske är nåt fel :)

Jesper TMedlem sedan nov. 20017 144 inlägg
#5

Ren gissning:

var num=0;
var pie = new Array();
while (num < thevalue_array.length)
{
    pie[num] = new PCPie();
    pie[num].value = thevalue[num];
    pie[num].bgColor = thebg[num];
    pie[num].label = thelabel[num];
    diagramObj.pies.push(pie[num]);
    num+=1;
}
131 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)