Avatar billede runberg Nybegynder
15. oktober 2002 - 09:31 Der er 4 kommentarer og
2 løsninger

JavaScript validering, som kan disable tekstbokse

Hejsa

Jeg er netop ved at udarbejde en ASP.Net applikation, hvor jeg gerne vil lave noget validering på client-siden. Valideringen skal teste hvorvidt der er skrevet noget i et eller flere felter, og hvis dette er tilfældet, skal det sætte værdien "enabled" til false på nogle tekstbokse. Hvordan gør man det???

Jeg har på de tekstbokse der skal valideres indsat en CustomValidator, og regner med at denne skal kalde et javascript. Men hvordan skal javascriptet se ud???
Avatar billede ras2000 Nybegynder
15. oktober 2002 - 09:38 #1
function valider(){
if (document.formnavn.feltnavn1.value != "") document.formnavn.feltnavn2.disabled = true;
Hvis der er flere felter der "hænger" på et felt, skal det se sådan her ud:
if (document.formnavn.feltnavn1.value != "") {
  document.formnavn.feltnavn2.disabled = true;
  document.formnavn.feltnavn3.disabled = true;
}
Avatar billede runberg Nybegynder
15. oktober 2002 - 09:47 #2
Hmm er det virkelig nødvendigt med document.formnavn.feltnavn osv.? Som nævnt er der tale om en asp.net applikation, og tekstboksene er derfor oprettet som asp.net tekstbokse, med ID og det hele.

Kunne man forestille sig at følgende ville virke:

if(tekstboksID1.text!=!!)
{
  teksboxID2.enabled="false";
  teksboxID3.enabled="false";
}

????
Avatar billede ras2000 Nybegynder
15. oktober 2002 - 09:51 #3
Det skal jeg ikke kunne sige, jeg kender ikke asp.net. Jeg ved at i javascript gør man som jeg skrev.
En anden måde at gøre det på ville være at kode i selve feltet der styrer:
<input type="text" id="id1" onchange="if(this.value!='')document.formnavn.feltnavn.disabled=true">
Jeg ville personligt holde mig fra at bruge id'er, NS er vist ikke så glad for dem.
Avatar billede runberg Nybegynder
15. oktober 2002 - 09:54 #4
Er nød til at bruge ID'er, da det er den eneste tilgang jeg har til mine objkter i asp.net.

En tekstboks bliver jo oprettet som
<asp:textbox id="navn" +(andre værdier)></asp:textbox>
Avatar billede ras2000 Nybegynder
15. oktober 2002 - 10:08 #5
Jamen du må da gerne give dem id'er, jeg ville bare kalde dem med navne i javascript. Hvis du vil kalde dem via deres id'er, er syntaxen document.getElementById("id'et").
Men når man arbejder med forms i javascript, er den anden syntax mere korrekt.
Avatar billede runberg Nybegynder
15. oktober 2002 - 10:11 #6
Okay.... Det virker måske lidt som om at det her spørgsmål i det hele taget er mere et ASP.NET spørgsmål. Har netop testet dit forslag, og kan ikke få det til at virke.
Vil derfor prøve at poste spørgsmålet under en .NET kategori. Du får dog tak for hjælpen.
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