16. august 2001 - 15:46Der er
6 kommentarer og 2 løsninger
Diverse JavaScript spørgsmål
Jeg har lavet et script som bla. ganger to felter med hinanden og skriver resultatet i det tredje. Koden til det ser således ud: felt1 = (document.form.felt1.value) felt2 = (document.form.felt2.value) document.form.total1.value = parseInt(felt1)*parseInt(felt2) Men med \"parseInt\" er det jo kun heltal der regnes med, og jeg vil gerne regne med decimaler. Kan det lade sig gøre?
Desuden viser \"total1\" ordet: \"NaN\" indtil der er tal i både felt1 og felt2. Kan det lade sig gøre, at der i stedet bare står 0 eller evt. ingenting?
Ja, det virker. Dog løser det ikke alle mine problemer, for jeg har et felt for neden, som lægger alle totalerne sammen. Men det vil først regne totalen ud når ALLE felter er udfyldt. Ikke hvis man kun udfylder et eller to felter?! Lidt underligt, eftersom der jo i hvert fald står 0 i dem alle.
De skal bare lægges sammen, men jeg har selv løst problemet. Først fandt den jo værdien og lagde den ned i en variabel. Så ændrede den feltet til 0, og dermed var variablen jo stadig \"NaN\" som der ikke kan regnes med. Så jeg har tilføjet en linie, hvor variablen kigger på feltet en gang til.
Jeg er ikke klar over om der kun er een gyldig seperator i javascript (.)
På min maskine er der i regional settings valgt , som decimal seperator, men alligevel er det kun strenge med . som seperator, der bliver parset som decimal tal.
felt1 = \"0\"+document.form.felt1.value; // med \"0\"+... sikrer vi at der altid kommer felt2 = \"0\"+document.form.felt2.value; // et tal ud af det, aldrin NaN. document.form.total1.value = parseFloat(felt1)*parseFloat(felt2)
parseFloat( ) læser decimaltal. kusk at decimalpunktet er et punktum og ikke et komma, det kan give problemer når danskere indtaster tal med decimaler. Brug evt: felt1 = felt1.replace( /,/, \".\" ); // lav komma til punktum.
Tak for det. Nu virker det hele (og det er ganske rigtig nødvendigt, at lave \",\" og til \".\"
Synes godt om
Ny brugerNybegynder
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.