Avatar billede karl-koder Nybegynder
17. april 2008 - 22:40 Der er 7 kommentarer og
2 løsninger

JSON, hvordan skal den se ud ?

Hejsa,

Jeg skal have retuneret noget JSON fra min server med nogle fejlbeskeder, som skal være noget ligendene nedenstående :

errors
errorheader:"Der opstod en fejl:"
errormessage:"1. Databasen findes ikke!"
errormessage:"2. Tabellen findes ikke!"
errormessage:"3. Record findes ikke!"

men hvordan skal det se ud i JSON format ?
Avatar billede w13 Novice
17. april 2008 - 23:30 #1
F.eks.:

{"errorheader":"Der opstod en fejl:","errormessage":["1. Databasen findes ikke!","2. Tabellen findes ikke!","3. Record findes ikke!"]}
Avatar billede karl-koder Nybegynder
17. april 2008 - 23:50 #2
Ok, men hvordan kalder jeg den så fra min javascript, er det bare noget i denne stil :

var errors = oHttp.responseText;
errors.errorheader;
errors.errormessage[0], errors.errormessage[1] etc.

eller hvordan skal det se ud ?
Avatar billede roenving Novice
18. april 2008 - 00:53 #3
var errors = eval( "(" + oHttp.responseText +")" );

-- ellers bliver det ikke lavet om til et objekt !-)

-- og måske vil det være relevant at sætte det hele op i objekt-format:

{"errorheader":"Der opstod en fejl:","errormessage":{"1":"1. Databasen findes ikke!","2":"2. Tabellen findes ikke!","3":"3. Record findes ikke!"}}

-- så kan du f.eks.

function visFejl(jsonObj,type){
  alert(jsoonObj.errorheader + "\n\n" + jsonObj.errormessage[type]);
}
Avatar billede karl-koder Nybegynder
18. april 2008 - 08:46 #4
Ja det er rigtigt med eval(), det har du vis vist før ;o)

Ideen er at det skal vises i en <ul> liste så det er fint nok at fejlbeskederne er lavet som et array. Så kan jeg løbe dem igennem med en for(){} loop.
Avatar billede w13 Novice
18. april 2008 - 12:29 #5
Det kan du nu alligevel med en for-each, noget i stil med:

for (var error in errors.errormessage){
  alert(error);
}
Avatar billede karl-koder Nybegynder
18. april 2008 - 12:40 #6
Ja det kan jeg da også, men som tidligere nævnt er javascript ikke min stærke side så jeg har meget at lære endnu ;o)

Men takker for input til jer begge, smid et svar.
Avatar billede roenving Novice
18. april 2008 - 13:49 #7
Velbekomme '-)
Avatar billede w13 Novice
21. april 2008 - 11:05 #8
Hov, fik da vist ingen mail om det her. :)
Avatar billede roenving Novice
27. april 2008 - 14:25 #9
-- og tak for point ;~}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester