Avatar billede drinkit Praktikant
11. juni 2004 - 12:00 Der er 17 kommentarer og
1 løsning

Labels onclick check checkbox

<input type="checkbox" name="accept" onclick="this.form.submit.disabled= this.checked">

<label for="accept">Jeg accepterer betingelserne..</label>
<br><br>
<input id="form" type="submit" value="Opret" name="submit" disabled="disabled" style="width: 60px; font-weight: bold;">

Hvor virker da shit ej.. jeg har da gjort som man skal :) ?
Det scriptet skal, er at når man klikker på teksten, skal den checke checboxen "accept" + slå "disabled" fra min submit knap.. Samtidig skal man kunne unckecke igen, ved endnu et klik på min label.. Forstår i :) ? Ellers så spørg!"
Avatar billede yellow Nybegynder
11. juni 2004 - 12:09 #1
<form>
X <input type="checkbox" name="accept" onclick="this.form.submit.disabled = !this.checked;">

<label for="accept">Jeg accepterer betingelserne..</label>
<br><br>
<input id="form" type="submit" value="Opret" name="submit" disabled style="width: 60px; font-weight: bold;">
</form>
Avatar billede grunken Nybegynder
11. juni 2004 - 12:10 #2
-og det er utrolig dårlig stil at bruge reseverede ord som navne :o)

så kald din submitknap noget andet end submit
Avatar billede drinkit Praktikant
11. juni 2004 - 12:12 #3
hvad hedder det modsatte af disabled ?
Avatar billede yellow Nybegynder
11. juni 2004 - 12:14 #4
"enabled", men jeg tror du misforstår. Du skal sætte disabled til sandt eller falsk:

this.form.submit.disabled = true
eller
this.form.submit.disabled = false

deraf:
this.form.submit.disabled = !this.checked
(! negerer udtrykket)

Og ja, som grunken sagde, så brug et andet navn til din submit ( selvom det virker ).
Avatar billede drinkit Praktikant
11. juni 2004 - 12:15 #5
jeg fik lige at vide at labels ikke køre i alle browsere , så jeg lavede en anden løsning:
<input type="checkbox" name="accept" onclick="this.form.submit.disabled= !this.checked;"><span onclick="document.opret.accept.checked='true';this.form.submit.disabled" style="cursor: pointer;">Jeg accepterer betingelserne..</span>

<br><br>
<input id="form" type="submit" value="Opret" name="submit" disabled="disabled" style="width: 60px; font-weight: bold;">
Avatar billede drinkit Praktikant
11. juni 2004 - 12:16 #6
men onclicl på "jeg accetere betingeleserne" virker ikke, fordi en span ikke kan checkes.. hvis du forstår :) !
Avatar billede yellow Nybegynder
11. juni 2004 - 12:17 #7
Det virker fint for mig ( du skal dog lige huske at putte det hele mellem en <form> og </form> ).
Avatar billede drinkit Praktikant
11. juni 2004 - 12:17 #8
Min logik siger mig at en af disse to løsninger burde virker:
<span onclick="document.opret.accept.checked='true';this.form.submit.enabled" style="cursor: pointer;">Jeg accepterer betingelserne..</span>
<span onclick="document.opret.accept.checked='true';this.form.submit.disabled='false';" style="cursor: pointer;">Jeg accepterer betingelserne..</span>

Men intet af det virker, og jeg er ikke god til JS, så måske du kunne forklare why ? :D
Avatar billede yellow Nybegynder
11. juni 2004 - 12:23 #9
Nåhhh, du vil kunne trykke på selve teksten og så få sat kryds i boksen?

Prøv med det her:
*************************
<form name="opret">
<input type="checkbox" name="accept" onclick="this.form.submit.disabled= !this.checked;">
<span onclick="document.opret.accept.checked=!document.opret.accept.checked;document.opret.submit.disabled=!document.opret.accept.checked" style="cursor: pointer;">Jeg accepterer betingelserne..</span>
<br><br>
<input id="form" type="submit" value="Opret" name="submit" disabled="disabled" style="width: 60px; font-weight: bold;">
</form>
***********************************

Er ikke helt så pænt, da man ikke kan tilgå "this.form" fra span elementet. Måske burde du ligge javascript-kode i en funktion i stedet, så det bliver lidt mere struktureret...men overstående skulle virke.
Avatar billede grunken Nybegynder
11. juni 2004 - 12:23 #10
som yellow siger er der ikke noget der hedder enable på javascriptsk :o)
Avatar billede yellow Nybegynder
11. juni 2004 - 12:26 #11
Hovsa, og din submit skal bare se sådan her ud:

<input id="form" type="submit" value="Opret" name="submit" disabled style="width: 60px; font-weight: bold;">

( altså ikke disabled="disabled" )
Avatar billede grunken Nybegynder
11. juni 2004 - 12:27 #12
og når du alligevel sætter værdierne til det samme yellow kan det forkorte den lidt at gøre sådan her :o)

onclick="document.opret.accept.checked=document.opret.submit.disabled=!document.opret.accept.checked"
Avatar billede drinkit Praktikant
11. juni 2004 - 12:30 #13
og hvor skulle den onclick stå ?
Avatar billede yellow Nybegynder
11. juni 2004 - 12:31 #14
Oh, kendte ikke den konstruktion :-)

( men submit-disabled er true når box-checked false, så den holder ikke helt i det her tilfælde ).
Avatar billede yellow Nybegynder
11. juni 2004 - 12:31 #15
Brug den fra 11/06-2004 12:23:12
Avatar billede drinkit Praktikant
11. juni 2004 - 12:32 #16
det virker :) TAK
Avatar billede grunken Nybegynder
11. juni 2004 - 12:33 #17
aha ;p
Avatar billede drinkit Praktikant
11. juni 2004 - 12:40 #18
ahaha :P
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