Avatar billede rookieboy Nybegynder
12. november 2007 - 12:32 Der er 5 kommentarer

Disable / enable submit knapper i flere form elementer på én gang

Jeg har et dynamisk genereret dokument (loop fra database), med en masse <form> elementer. Name og id på disse form elementer, bliver generet ud fra et database record id. Fx:

<form id="form1" name="form2"> .... </form>
<form id="form52" name="form52"> .... </form>
<form id="form65" name="form65"> .... </form>

Name og id er altså IKKE fortløbne numre!

Jeg ønsker at tænde og slukke for alle submitknapper i alle formularer, afhængig af, hvilket tekst input felt, som brugeren har aktiveret.

Jeg har følgende script:

<script type="text/javascript"><!--
function DisableBtn(){
// Sluk for alle submitknapper i alle <form> elementer
} // end function

function EnableBtn(id){
document["form"+id]["btnSubmit"+id].disabled = false;
} // end function
// -->
</script>

EnableBtn() funktionen virker fint, men jeg kan ikke finde ud af, at disable alle submit knapper, i alle <form> elementerne i funktionen 'DisableBtn'..

Hvordan kalder jeg alle disse formularer på samme tid? Jeg kan jo ikke bare lave et loop, da id og navn ikke er sekvensielt, og da antallet af <form> elementer er dynamisk genereret.

Nogle idéer?
Avatar billede Slettet bruger
12. november 2007 - 12:38 #1
Nu spørger jeg måske dumt, men hvorfor er det overhovedet nødvendigt at disable nogle af submitknapperne?
Avatar billede fennec Nybegynder
12. november 2007 - 12:49 #2
Noget i denne stil (ikke testet):

fFormGroup = document.getElementsByTagName("Form")
for(f=0;f<fFormGroup.length;f++)
{
  fSubmitGroup = fFormGroup[f].getElementsByTagName("input")
  for(i=0;i<fSubmitGroup.length;i++)
  {
    if(fSubmitGroup[i].type=="submit")
      fSubmitGroup[i].disabled = true;
  }
}
Avatar billede fennec Nybegynder
12. november 2007 - 12:50 #3
Kunne evt også bare bruge:

fSubmitGroup = document.getElementsByTagName("input")
for(i=0;i<fSubmitGroup.length;i++)
{
  if(fSubmitGroup[i].type=="submit")
    fSubmitGroup[i].disabled = true;
}

Men ved ikke hvilken der kører hurtigst.
Avatar billede rookieboy Nybegynder
12. november 2007 - 13:39 #4
Nøj, det er smunkt!!
Mange tak for hjælpen :-)

Smid et svar for points fennec.
Avatar billede fennec Nybegynder
12. november 2007 - 13:58 #5
.o) <-- One Eyed Jack
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