Avatar billede kennethv Nybegynder
18. november 2008 - 09:04 Der er 17 kommentarer og
1 løsning

Aktiv og inaktiv checkbox og inputbox.

Jeg er ikke nogen super haj til Javascript, men har brug for hjælp til en lille ting. Jeg har dette i php:

echo "<input type=\"checkbox\" style=\"margin-left:300px\" onclick=\"document.getElementById('PC').disabled=(this.checked?false:true)\">";
echo "<input style=\"margin-left:4px;width:175px\" type=\"text\" name=\"PC\" id=\"PC\" disabled=\"disabled\"><br>";
echo "<br>Retur til IT-afdelingen?</Font>";
echo "<input type=\"checkbox\" checked=\"yes\" style=\"margin-left:383px\" name=\"Internt\">";

Som udgangspunkt er #2 checkbox aktiv og inputfelt er inaktiv.

Tanken er så at når #1 checkbox trykkes aktiv bliver inputfelt aktiv og #2 checkbox bliver inaktiv.
Man skal ikke kunne trykke på checkbox #2 så den bliver inaktiv, hvis ikke checkbox #1 er aktiv, men dog skal man kunne sætte checkbox #2 aktiv, hvis checkbox #1 er aktiv.

Håber at det gav menning. :)
Avatar billede jordz Nybegynder
18. november 2008 - 09:16 #1
er det ikke en radio du mener?
Avatar billede kennethv Nybegynder
18. november 2008 - 09:32 #2
Næ, det var egentlig checkbox, men jeg kan da godt se hvorfor du spørger. Det ville nok være nemmere at bruge sådanne nogle.

Er det noget du kunne hjælpe med?
Avatar billede w13 Novice
18. november 2008 - 10:06 #3
Så retter du bare alle forekomster af "checkbox" til "radio"
Avatar billede roenving Novice
18. november 2008 - 10:09 #4
Ikke forstået, skal de to checkbokse kunne være afkrydset samtidigt ?-)
Avatar billede roenving Novice
18. november 2008 - 10:10 #5
-- og hvad er forøvrigt det lukketag for noget </Font>
Avatar billede kennethv Nybegynder
18. november 2008 - 10:20 #6
W13: ok, men hvordan styrer jeg så, så de er uafhængig af hinanden?

Roenving: Nej, de 2 checkbokse skal ikke kunne være afkydset samtidig. Men jeg tror at radio er bedre.
Avatar billede w13 Novice
18. november 2008 - 10:23 #7
Hvis de skal være uafhængige, _skal_ du bruge checkboxes. =) Jeg svarede bare på, hvordan man bruger radiobuttons.
Avatar billede roenving Novice
18. november 2008 - 10:35 #8
-- så har jeg bestemt ikke forstået hvad du mener ...

-- fra start er #2 afkrydset og tekstboksen disabled, hvis man så afkrydser #1, skal tekstboksen enables og #2 skal have fjernet afkrydsningen og skal den så også disables, eller skal man ved at afkrydse den kunne reversere de foregående handlinger ?-)
Avatar billede kennethv Nybegynder
18. november 2008 - 10:37 #9
Men burde man ikke kunne trykke enten på den ene elle den anden, sådan at hvis radio 2 er aktiv, som udgangspunkt, så burde man kunne trykke på radio 1 også bliver radio 2 inaktiv og omvendt?
Avatar billede kennethv Nybegynder
18. november 2008 - 10:41 #10
Roenving: Helt korrekt opfattet. #2 skal ikke disables, men man skal ved afkrydse den kunne reversere de foregående handlinger.
Avatar billede roenving Novice
18. november 2008 - 10:41 #11
Det er det radios med samme navn automatisk gør !-)
Avatar billede roenving Novice
18. november 2008 - 10:47 #12
Så bliver det noget lignende:

<script type="text/javascript">
function actTextbox(act){
  document.getElementById("PC").disabled = !act;
}
</script>


echo "<input type=\"radio\" name=\"art\" style=\"margin-left:300px\" onclick=\"actTextbox(true);\">";
echo "<input style=\"margin-left:4px;width:175px\" type=\"text\" name=\"PC\" id=\"PC\" disabled=\"disabled\"><br>";
echo "<br>Retur til IT-afdelingen?</Font>";
echo "<input type=\"radio\" name=\"art\" checked=\"checked\" style=\"margin-left:383px\" name=\"Internt\">" onclick=\"actTextbox(false);\">";
Avatar billede kennethv Nybegynder
18. november 2008 - 11:15 #13
Hvor skal denne del stå?

<script type="text/javascript">
function actTextbox(act){
  document.getElementById("PC").disabled = !act;
}
</script>
Avatar billede roenving Novice
18. november 2008 - 11:20 #14
Hvorsomhelst i html-dokumentet, enten indenfor head-elementet eller inde i body-elementet !-)

-- og et eksempel kunne være:

...
?>
<script type="text/javascript">
function actTextbox(act){
  document.getElementById("PC").disabled = !act;
}
</script>

<input type="radio" name="art" style="margin-left:300px" onclick="actTextbox(true);">
input style="margin-left:4px;width:175px" type="text" name="PC" id="PC" disabled="disabled"><br>
<br>Retur til IT-afdelingen?
<input type="radio" name="art" checked="checked" style="margin-left:383px" name="Internt">" onclick="actTextbox(false);">
<?php
...

-- for der er vel ingen grund til at udskrive med php, hvis der ikke aktivt skal ændres inde i koden !-)
Avatar billede kennethv Nybegynder
18. november 2008 - 13:10 #15
Fantatisk. Det var lige præcis det jeg søgte. tak for det.

Du må lige ligge et svar.
Avatar billede roenving Novice
19. november 2008 - 16:11 #16
Velbekomme '-)
Avatar billede w13 Novice
23. august 2009 - 18:22 #17
Lukketid?
Avatar billede w13 Novice
07. maj 2010 - 10:58 #18
Husk at acceptere svaret for at lukke spørgsmålet og give Roenving 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