Avatar billede bjarkekr Nybegynder
04. april 2006 - 14:44 Der er 9 kommentarer og
1 løsning

problem med tal

Jeg trækker et tal ind fra en xml. Jeg putter tallet i en root var (_root.tal = xmltal)

Herefter udskriver jeg følgende:

if(isNaN(_root.tal)){myText.htmlText += 'true'}
myText.htmlText += _root.tal;

Det bliver til: true 5

Hvordan pokker kan det lade sig gøre???

Vi er vel enige om at 5 er et tal?

Kan det have noget med formatet af min xml at gøre?? Altså om det er utf-8 eller ansi osv.?
Avatar billede webblaster Nybegynder
04. april 2006 - 14:51 #1
ja det må være noget der går galt i xml filen eller når du henter den ind for jeg har lige testet:

_root.tal =5;
if(isNaN(_root.tal)){myText.htmlText += 'true'}
myText.htmlText += _root.tal;

og der får jeg "5" ud..

så hvordan ser din xml ud og det kode der henter xml data'en ind i flash
Avatar billede webblaster Nybegynder
04. april 2006 - 14:53 #2
prøv at lad vær med at give din xml utf-8 eller andet format og nøjes med

<?xml version="1.0"?>
Avatar billede webblaster Nybegynder
04. april 2006 - 14:58 #3
prøv at rette denne linje

myText.htmlText += _root.tal;

til dette

myText.htmlText = _root.tal;

så skulle den være der
Avatar billede bjarkekr Nybegynder
04. april 2006 - 15:01 #4
Jeg har prøvet at gemme i forskellige formater..

Hvis jeg gemmer i ansi ser mine æøå rigtige ud i flash. Fejl med tallet
Hvis jeg gemmer i UTF-8 ser mine æøå mærkelige ud, og stadig fejl i tallet.
Hvis jeg gemmer i unicode, bliver min ASP i filen ikke kompileret, og kan udskrives på skærmen. Det duer ikke...

Hvad er der så tilbage?? Har prøvet med og uden encoding i denne linje.
<?xml version="1.0" encoding="UTF-8"?>
Avatar billede bjarkekr Nybegynder
04. april 2006 - 15:02 #5
webblaster> Det sidste du skriver er jo noget sludder... Det står andre ting i mit tekst felt, og derfor skriver jeg +=

Det er jo bare at tilføje tekst til et tekstfelt. Så det har intet at sige
Avatar billede bjarkekr Nybegynder
04. april 2006 - 15:06 #6
Nu prøver jeg at lave den samme test direkte der hvor den bliver hentet fra xml:

if(isNaN(indlaeg[i])){myText.htmlText = 'true'}
myText.htmlText += indlaeg[i];

Udskriften bliver som sidst: true 5
Avatar billede barklund Nybegynder
04. april 2006 - 16:45 #7
Altså:

"hej "+5

Giver jo "hej 5". Det har det altid gjort. Og især kombineret med, at din variabel sikkert ikke er tallet 5 men strengen "5", så er det endnu mere logisk. Hvad vil du rent faktisk have true+"5" til at give? 6? false? Jeg har ingen anelse - det er jo ganske meningsløst :)

Og din XML har ingen betydning - slet ikke alt det der med UTF-8, som nu bør være der af kosmetiske årsager.

--
Morten Barklund
Avatar billede bjarkekr Nybegynder
04. april 2006 - 17:13 #8
Jeg tror ikke du har forstået problemet.

Jeg vil ikke have true+5 til at give 6...

Jeg vil have "5" til at være et tal.

Men nok om det, som du sikkert allerede har læst på flashfaq har jeg løst problemet.
Avatar billede bjarkekr Nybegynder
04. april 2006 - 17:14 #9
Svar til mig selv.
Avatar billede bjarkekr Nybegynder
04. april 2006 - 17:15 #10
Kunne da lige skrive løsningen til dem der skulle få samme problem :)

Jeg smed en typeof på mit "tal" og fandt ud af at flash mente det var et objekt. Så den var gal i måden jeg indlæste min xml på. Derfor skrev jeg min xml indlæsning om på en ny måde og fik det korrekte resultat. :)
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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