13. marts 2007 - 15:30
Der er
6 kommentarer og 1 løsning
Gemme 2 dimensionelt array i hiddenfield
Er det muligt at gemme et 2 dimensionelt array i et hiddenfield og efter et postback så få de data tilbage i et 2 dimensionelt array? Hvis ja hvordan?
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
13. marts 2007 - 15:32
#1
Du kan f.eks. emulere et json-objekt i feltet !-)
13. marts 2007 - 15:41
#2
Kan du give et eksempel på det?
13. marts 2007 - 15:56
#3
F.eks. -- du har variablen test, der er et to-dimensionelt array ... var txtTest = "["; for(i=0,im=test.length;im>i;i++){ txtTest += "["; for(j=0,jm=test[i].length;jm>j;j++){ txtTest += test[i][j] + jm-1 > j ? "," : ""; } txtTest += "]" } txtTest += "]"; feltObject.value = txtTest; -- så kan du aflæse objektet direkte med eval: var test; window.onload = function(){ test = eval(document.formNavn.feltNavn.value); }
13. marts 2007 - 20:20
#4
Jeg har prøvet følgende: function test1() { test = new Array(); test[0] = new Array(); test[1] = new Array(); test[2] = new Array(); test[0][0] = "0,0"; test[0][1] = "0,1"; test[1][0] = "1,0"; test[1][1] = "1,1"; test[2][0] = "2,0"; test[2][1] = "2,1"; alert(test); var txtTest = "["; for(i=0,im=test.length;im>i;i++){ txtTest += "["; for(j=0,jm=test[i].length;jm>j;j++){ txtTest += test[i][j] + jm-1 > j ? "," : ""; } txtTest += "]" } txtTest += "]"; alert(txtTest); document.forms[0].<%= test_hdn.ClientID %>.value = txtTest; } Men det output den får lavet er følgende: [[][][]]
14. marts 2007 - 09:29
#5
Fandt ud af det :-) Der er åbenbart et problem med følgende linie : txtTest += test[i][j] + jm-1 > j ? "," : ""; men hvis jeg laver på 2 linier virker det ?-) txtTest += test[i][j]; txtTest += jm-1 > j ? "," : ""; også skulle der også lige være komma i mellem [[],[]] så alt ialt kom jeg frem til følgende: var txtTest = "["; for(i=0,im=test.length;im>i;i++) { txtTest += "["; for(j=0,jm=test[i].length;jm>j;j++) { txtTest += test[i][j]; txtTest += jm-1 > j ? "," : ""; } txtTest += "]"; txtTest += im-1 > i ? "," : ""; } txtTest += "]"; roenving endnu engang mange tak for hjælpen, smid et svar så er der point...
14. marts 2007 - 09:38
#6
Argh, et gammelt problem med den ternære operator: txtTest += test[i][j] + (jm-1 > j ? "," : ""); Velbekomme '-)
14. marts 2007 - 10:04
#7
-- og tak for point ;~}
Vi tilbyder markedets bedste kurser inden for webudvikling