Avatar billede doctorman Nybegynder
15. november 2005 - 21:46 Der er 3 kommentarer og
1 løsning

Validering af et tal (positiv og negativ)

Jeg bruger nedenstående function til at validere om et tal i en textbox er et tal. Nu vil jeg dog gerne kunne acceptere negative tal også.
Hvad skal der så stå i nedenstående linie:
reg = /^\d+(.\d{1,2})?$/;

function validNum(fld){
    var antal
    komma = fld.value.indexOf(",")
        if(fld.value.indexOf(",")>0){
            antal = (fld.value.substring(0,komma)+"."+fld.value.substring(komma+1));
        fld.value = antal;
        }
    fld.value = formatNum(fld.value);
    reg = /^\d+(.\d{1,2})?$/;
        if(!fld.value.match(reg)){
        alert('Kun tal, komma og punktum i feltet');
        fld.focus();
        return false
    }
    if((fld.name.indexOf("_1")<0) || (fld.name.length>11)){
        var tal;
        tal = fld.name.substr(10,fld.name.length-10);
    }
    BeregnSum(fld);
    SumTimer();
    return true;
}

Mvh
KPH
Avatar billede roenving Novice
15. november 2005 - 21:50 #1
reg = /^[+-]?\d+(.\d{1,2})?$/;

-- så man også kan skrive +'et !-)

-- ellers er det kun -? du skal tilføje !o]
Avatar billede doctorman Nybegynder
16. november 2005 - 09:17 #2
Perfekt - laver du et svar så du kan få point.

Mvh
KPH
Avatar billede roenving Novice
16. november 2005 - 12:30 #3
Velbekomme '-)

-- og hov, jeg fangede lige en uhensigtsmæssighed:

reg = /^[+-]?\d+(\.\d{1,2})?$/;

-- for ellers betyder punktummet et hvilketsomhelst tegn, hvorfor f.eks. 196g87 vil blive godkendt !-)

-- hvis du vil godkende både punktum og komma skal det være:

reg = /^[+-]?\d+([\.,]\d{1,2})?$/;
Avatar billede roenving Novice
16. november 2005 - 19:52 #4
-- 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