Avatar billede smukke Nybegynder
31. oktober 2000 - 11:49 Der er 8 kommentarer og
1 løsning

checke på felt-type

Kan man checke på et felts type á la:

function validateField(field) {
switch(field.type)
{
    case \"input\" : {return true;}
    break;
    default : {return false;}
}   
}

..eller er det helt forkert??
Avatar billede erikjacobsen Ekspert
31. oktober 2000 - 12:08 #1
Den er god nok, men det du får tilbage med .type er typerne, f.eks. \"hidden\" eller \"text\".
Du kan få \"INPUT\" ved at spørge på .tagName.
Avatar billede smukke Nybegynder
31. oktober 2000 - 12:25 #2
ja, men selvfølgelig skal det være \"text\" - det er bare det, jeg skal vide - det er mig, der klokkede i det ved at skrive \"input\".

Det vil altså sige, at man godt kan gøre følgende:

function validateField(field) {
switch(field.type)
{
    case \"text\" : {return true;}
    break;
    default : {return false;}
}   
}
Avatar billede erikjacobsen Ekspert
31. oktober 2000 - 12:29 #3
ja, altså, det vil sige, du får det, som du selv har skrevet
  <input type=\"text\" ...>
men selvfølgelig ikke noget om hvad feltet så faktisk indeholder i værdien.
Jeg er ikke sikker på jeg kan se sammenhængen til validering af data, men
det kommer vel an på hvad du vil med det ;-)
Avatar billede smukke Nybegynder
31. oktober 2000 - 12:46 #4
Jeg skulle bare lige have hul igennem først - se, om man kunne bruge det dén vej - men det færdige resultat bliver noget i retning af:

var her_er_du_overskrift = \"required\";
..etc. - her skal stå en række variabler, der angiver, om feltet er required.

function validateField(field) {
switch(field.type)
{
    case \"text\" : {if (field.value != \"\") {return true;}else return false;}
    break;
    case \"select\" : {if (field.options[field.options.selectedIndex].text==\"\") {return true;}else return false;}
    default : {return false;}
}   
}

function validateAll(form) {
var ok = true;
for (var i = 0; i < form.elements.length; i++) {
fieldname = form.elements[i].name;
if (\'her_er_du_\'+fieldname==\"required\")
    {udfyldt = validateField(form.elements[i]);
    if (udfyldt == false)
        {ok = false;}
    else
        {ok = true};
}
}
Avatar billede smukke Nybegynder
31. oktober 2000 - 13:05 #5
...men man kan måske ikke referere til variabel-navne dynamisk?
(\'her_er_du_\'+fieldname)

:-(
Avatar billede erikjacobsen Ekspert
31. oktober 2000 - 13:10 #6
Joda bare du siger eval rundt om ;-)

if ( eval(\'her_er_du_\'+fieldname) == \"required\"  ) {

Avatar billede mpj Nybegynder
31. oktober 2000 - 20:39 #7
case?
break;

ER det javascript!
Avatar billede erikjacobsen Ekspert
31. oktober 2000 - 20:45 #8
Ja, såmænd mpj - li\'som i C.
Avatar billede smukke Nybegynder
01. november 2000 - 07:40 #9
Tak, erikjacobsen :-)
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