Just nu i M3-nätverket
Gå till innehåll

Siffror i arrayer?


Vickan7

Rekommendera Poster

Hur gör jag för att kunna lagra siffror i arrayer? Som det är nu blir det bara en siffra på varje post, men jag vill ju lagra större tal än 9. :-)

 

[log]

<script language="JavaScript" type="text/javascript">
//<!--

var arrPlanering = new Array(10);
arrPlanering[0] = new Array(); //"proj_id,akt_id,resurs_id";

<%	
plan_lopnr = 1
For i= 1 to 1500 step 100
response.write "arrPlanering[" & plan_lopnr & "] = '" & i & "," & (i+2000) & "," & i & "';" & vbcr
plan_lopnr = plan_lopnr +1
Next		

%>


for (i in arrPlanering) {
     document.write("ny rad <BR>");
     for (j in arrPlanering[i]) {
 	document.write("ny post <BR>");
              document.write(arrPlanering[i][j]+"<BR>");
      }
}

//-->
</script>

[/log]

 

Länk till kommentar
Dela på andra webbplatser

Förstår inte riktigt hur du menar. Utelämna asp-koden så länge och förklara enbart hur du vill ha det i Javascript. Är det kanske en array av arrayer du är ute efter?

 

Länk till kommentar
Dela på andra webbplatser

Egentligen är jag ute efter att lagra ett recordset från en databas, som innehåller 1, 2 eller 3 id-nummer på varje rad. Vissa poster kan alltså vara tomma, men den första posten i varje rad innehåller alltid ett id-nummer.

 

När jag skapar matrisen och skriver ut den verkar det som att varje siffra lagras var för sig. Tex lagras 1606 som 1, 6, 0, 6.

 

 

Länk till kommentar
Dela på andra webbplatser

Med den metod du använt ovan skapas det arrayer enligt:

arrPlanering[2] = '101,2101,101';

Var det inte så du ville ha det?

 

Men jag föreslår att du som sagt använder arrayer av arrayer (aka en matris), där du skapar varje post enligt:

arrPlanering[0]=new Array(100,200,300);

 

Länk till kommentar
Dela på andra webbplatser

När jag gör så som jag har gjort skriver koden bara ut en siffra/ rad.

 

Grejen är ju den att jag inte vet vilka siffror som ska in i arrayen/matrisen, eftersom de hämtas i en db.

 

Så här ser koden ut:

var arrPlanering = new Array();
arrPlanering[0] = new Array(); //"proj_id,akt_id,resurs_id";

<%	
SQL = "SELECT tbl_planerad_tid.proj_id, tbl_planerad_tid.akt_id, tbl_planerad_tid.anvandare_id FROM tbl_planerad_tid LEFT JOIN tbl_projekt ON tbl_planerad_tid.proj_id ="&_
" tbl_projekt.projekt_id WHERE tbl_projekt.bolag_id=" & my_bolag_id & " GROUP BY tbl_planerad_tid.proj_id, tbl_planerad_tid.akt_id, tbl_planerad_tid.anvandare_id "&_
"ORDER BY proj_id, akt_id, anvandare_id"

SET rs_proj = Conn.Execute(SQL)


plan_lopnr = 1
Do While Not rs_proj.EOF

  if rs_proj("proj_id") <> "" then 	
       response.write "arrPlanering[" & plan_lopnr & "] = '" & rs_proj("proj_id") & "," & rs_proj("akt_id") & "," & rs_proj("anvandare_id") & "';" & vbcr
       plan_lopnr = plan_lopnr +1
   end if
   rs_proj.MoveNext
Loop

rs_proj.close
Set rs_proj = Nothing
%>

 

Länk till kommentar
Dela på andra webbplatser

När jag gör så som jag har gjort skriver koden bara ut en siffra/ rad.

Förstår fortfarande inte vad du menar. Kan du ta en dump av den javascript som ovanstående kod genererar och klistra in den här och bifoga den skapade länken:

 

http://www.rafb.net/paste/

 

 

Länk till kommentar
Dela på andra webbplatser

Konstigt... När jag kollar i källkoden verkar rätt saker sparas i arrayerna, det är utskriften som är konstig och bara skriver ut ett tecken.

 

Nåja, det är innehållet som räknas! :-)

Tack för att du försöker hjälpa mig!

 

Länk till kommentar
Dela på andra webbplatser

det är utskriften som är konstig och bara skriver ut ett tecken.

Jaha, den delen av scriptet tittade jag inte ens på.

 

Det du försöker göra i den inre loopen fungerar inte som du vill, eftersom varje element bara innehåller en kommaseparerat sträng, som räknas som ett singulärt värde. Använd matriser som jag sade istället, testa med följande omskrivning av ditt första exempel:

 

plan_lopnr = 1
For i= 1 to 1500 step 100
response.write "arrPlanering[" & plan_lopnr & "] = new Array(" & i & "," & (i+2000) & "," & i & ");" & vbcr
plan_lopnr = plan_lopnr +1
Next

 

Länk till kommentar
Dela på andra webbplatser

Tack för hjälpen! Jag trodde att det räckte med att tala om att plats 0 var en array, men jag ska skriva om det som du föreslog.

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...