Avatar billede trajkovski Nybegynder
20. maj 2004 - 18:00 Der er 10 kommentarer og
1 løsning

checkbox og derefter flere valgmuligheder

Hej

Jeg skal bruge en checkbox i et script, og hvis denne er tjekket, skal brugeren få nogle flere valgmuligheder uden siden skal reloades.
F.eks. kan brugeren blive spurgt, om denne gerne vil kaldes ved navn, hvorefter en ellers grå box kommer til syne, hvor brugeren kan skrive, hvad denne vil kaldes. Kan dette lade sig gøre i php?

Jeg ville umiddelbart sige nej, men det ville glæde mig, hvis I er af anden overbevisning :)

Hvis I er enige med mig, kan I så komme med forslag, til hvordan det kan gøres?

På forhånd tak

Nicolai
Avatar billede grunken Nybegynder
20. maj 2004 - 18:06 #1
flyt spørgsmålet til dhtml, eller javascript - så skal du bare se :o)

men du har ret i at phptingen er umulig!
Avatar billede roenving Novice
20. maj 2004 - 18:08 #2
Nej, ikke i php, men ganske nemt i java script:

<form>
Jeg vil kaldes ved navn: <input type="checkbox" onclick="this.form.navn.style.visibility=(this.checked)?'visible':'hidden'"><br>
<input type="text" name="navn" value="Skriv dit navn her" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" style="visibility:hidden">
</form>
Avatar billede trajkovski Nybegynder
20. maj 2004 - 18:13 #3
Tak for det hurtige svar!

Javascript kræver jo, at brugeren understøtter dette, hvilket de fleste dog også gør.
Hvis det gøres i dhtml, kan det vel heller ikke virke i alle browsere?
Avatar billede grunken Nybegynder
20. maj 2004 - 18:18 #4
dhtml/javascript = mere eller mindre det samme :o)

men efter popupkillerens indmarch er der ikke så mange der overhovede tænker på at slå javascript fra - det skal dog nævnes at nogen firewall's kan finde på at tage og sortere enkelte javascripts fra, men det hører dog til sjældenheder :o)

Og roenvings eksempel er kanont :o)
Avatar billede trajkovski Nybegynder
20. maj 2004 - 18:21 #5
Der skulle have stået "Tak for de hurtige svar" :)

Nå, men hvis jeg beslutter mig for at bruge din javascript løsning, hvad sker der så med php, hvis jeg beder den om at hente det, der står i navn, og der ikke står noget i den?
Avatar billede roenving Novice
20. maj 2004 - 18:21 #6
Men det er jo rigtigt at ikke alle browsere understøtter dhtml ...

Dem, som er mere end 10 år gamle, kan slet ikke forstå billeder heller !-)

Men det er altså cirka den alder, der skal til !o]
Avatar billede roenving Novice
20. maj 2004 - 18:23 #7
Du kan jo bare checke om checkboxen er afkrydset, og hvis den ikke er det, så ignorere navne-feltet ...

-- og iøvrigt huske at validere det mod defaultValue, hvis du bruger hjælpetekst-modellen !-)
Avatar billede trajkovski Nybegynder
20. maj 2004 - 18:26 #8
Ok... Det vil jeg så gøre...

Men kan du modificere scriptet, sådan at boksen kan ses, men den er grå i stedet for helt væk?

Og så kom lige med et svar, for så vil jeg da gerne smide nogle point i hovedet på dig :)
Avatar billede roenving Novice
20. maj 2004 - 18:29 #9
Sådan, måske ?-)

<form>
Jeg vil kaldes ved navn: <input type="checkbox" onclick="this.form.navn.disabled=!this.checked"><br>
<input type="text" name="navn" value="Skriv dit navn her" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;" disabled="disabled">
</form>

-- og velbekomme '-)
Avatar billede trajkovski Nybegynder
20. maj 2004 - 18:33 #10
Yes takker så burde jeg selv kunne finde ud af resten...
Avatar billede roenving Novice
21. maj 2004 - 13:49 #11
-- og jeg takker for point ;~}
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