Avatar billede javanoob Nybegynder
23. april 2003 - 23:06 Der er 13 kommentarer og
2 løsninger

Disable Submit knap...

Hejsa... hvor får jeg en submit knap til kun at være enabled når visse felter i en <form> er udfyldt... ?
Avatar billede medions Nybegynder
23. april 2003 - 23:19 #1
<FORM NAME="form">
<TEXTAREA OnChange="document.form.submitknap.disabled = false" OnKeyPress="document.form.submitknap.disabled = false"></TEXTAREA>
<INPUT TYPE="submit" NAME="submitknap" DISABLED>
</FORM>

//>Rune
Avatar billede eagleeye Praktikant
23. april 2003 - 23:31 #2
Jeg faldt lige over dette eks jeg vil smide:

Du kan udvide denne if med flere form felter hvis de også skal med i tjekket
if ((document.navn.t1.value=='') || (document.navn.t3.value=='')) {

Og så skal dette tilføje til det input så functionen kaldes:
onchange="checksumbit();"



<html><head>
<script language="javascript">
function checksumbit() {
if ((document.navn.t1.value=='') || (document.navn.t3.value=='')) {
  document.navn.send.disabled = true;
} else {
  document.navn.send.disabled = false;
}
}
</script>
</head>
<body onload="checksumbit();">

<form name="navn">
<input type="text" name="t1" onchange="checksumbit();">
<input type="text" name="t2">
<input type="text" name="t3" onchange="checksumbit();">
<input type="submit" name="send">
</form>

</body>
</html>
Avatar billede grunken Nybegynder
23. april 2003 - 23:32 #3
eller

<script language="javascript">
  function skift() {
    if (frm.felt1.value.length>0 && frm.felt2.value.length>0){
        frm.knap.disabled = false;
    }
  }
</script>
<form name="frm">
<input type="text" size="20" name="felt1" onchange="skift();">
<input type="text" size="20" name="felt2" onchange="skift();">
<input type="submit" name="knap" DISABLED>
</form>
Avatar billede javanoob Nybegynder
23. april 2003 - 23:38 #4
Jeg har fire Input type=text der skal stå noget i alle sammen.... i får lige navnene: navn, adr, by, dkkort

og min submit:

<input type='submit' name='submit' value='Send Bestilling'>

Hvordan skal det så se ud ?
Avatar billede medions Nybegynder
23. april 2003 - 23:40 #5
Sådan fx.:

<script language="javascript">
  function skift() {
    if (frm.navn.value.length>0 && frm.adr.value.length>0 && frm.by.value.length>0 && frm.dkkort.value.length>0){
        frm.knap.disabled = false;
    }
  }
</script>
<form name="frm">
<input type="text" size="20" name="navn" onchange="skift();">
<input type="text" size="20" name="adr" onchange="skift();">
<input type="text" size="20" name="by" onchange="skift();">
<input type="text" size="20" name="dkkort" onchange="skift();">
<input type="submit" name="knap" DISABLED>
</form>

//>Rune
Avatar billede eagleeye Praktikant
23. april 2003 - 23:41 #6
<html><head>
<script language="javascript">
function checksumbit() {
if ((document.navn.navn.value=='') || (document.navn.adr.value=='') || (document.navn.by.value=='') || (document.navn.dkkort.value=='')) {
  document.navn.send.disabled = true;
} else {
  document.navn.send.disabled = false;
}
}
</script>
</head>
<body onload="checksumbit();">

<form name="navn">
<input type="text" name="navn" onchange="checksumbit();">
<input type="text" name="adr" onchange="checksumbit();">
<input type="text" name="by" onchange="checksumbit();">
<input type="text" name="dkkort" onchange="checksumbit();">

<input type='submit' name='send' value='Send Bestilling'>
</form>

</body>
</html>
Avatar billede javanoob Nybegynder
23. april 2003 - 23:48 #7
medions> Dit ser mest rigtig ud, men submit forbliver disabled...
Avatar billede medions Nybegynder
23. april 2003 - 23:54 #8
javanoob> Prøv når du har udfyldt alle felterne at klik ved siden af felterne, bliver den så enabled?

//>Rune
Avatar billede medions Nybegynder
23. april 2003 - 23:55 #9
Prøv lige sådan her:

<script language="javascript">
  function skift() {
    if (frm.navn.value.length>0 && frm.adr.value.length>0 && frm.by.value.length>0 && frm.dkkort.value.length>0){
        frm.knap.disabled = false;
    }
  }
</script>
<form name="frm">
<input type="text" size="20" name="navn" onkeyup="skift();">
<input type="text" size="20" name="adr" onkeyup="skift();">
<input type="text" size="20" name="by" onkeyup="skift();">
<input type="text" size="20" name="dkkort" onkeyup="skift();">
<input type="submit" name="knap" DISABLED>
</form>

//>Rune
Avatar billede eagleeye Praktikant
23. april 2003 - 23:56 #10
Hvordan afgør man "Dit ser mest rigtig ud" ?
Det er nøjaktig det samme: Det ene bruger && samt > det andet er med || smat =
Avatar billede eagleeye Praktikant
24. april 2003 - 00:01 #11
Grunden til den ikke bliver aktiv lige med det samme er fordi eventet onChange føst komme når man forlader input feltet. Så du skal tykke på tab vidre før knappen bliver aktiv.
Avatar billede eagleeye Praktikant
24. april 2003 - 00:05 #12
Har du taget hele input formen eller beholdt din egen submit knap?
Avatar billede grunken Nybegynder
24. april 2003 - 00:29 #13
Der er da sørme blevet en spændende debat ud af det her spøgsmål ;))
Avatar billede olebole Juniormester
24. april 2003 - 02:00 #14
<ole>

I eagleeye's er det ikke så smart at bruge samme navn til formen og det første felt. I medions' adresseres forkert - og det er vigtigt med en 'else' til sidst.
Til gengæld er det smartest at lægge kaldet på onkeyup-event'en. Så deeeeeeeeet ..... :)
Sådan ville jeg nok skrive det:

<script language="javascript">
  function skift() {
      varf = document.frm;
    if (f.navn.value.length>0 && f.adr.value.length>0 && f.by.value.length>0 && f.dkkort.value.length>0){
        f.knap.disabled = false;
    }
    else f.knap.disabled = true;
  }
</script>
<form name="frm">
<input type="text" size="20" name="navn" onkeyup="skift();">
<input type="text" size="20" name="adr" onkeyup="skift();">
<input type="text" size="20" name="by" onkeyup="skift();">
<input type="text" size="20" name="dkkort" onkeyup="skift();">
<input type="submit" name="knap" DISABLED>
</form>

/mvh
</bole>
Avatar billede olebole Juniormester
24. april 2003 - 02:01 #15
Oooops .... var f = document.frm;  ;o)
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