Kom ihåg mig?
Home Menu

Menu


Hur bocka checkboxar med hjälp av dropdown?

Ämnesverktyg Visningsalternativ
Oläst 2008-09-01, 13:42 #1
nCo nCo är inte uppkopplad
Medlem
 
Reg.datum: May 2006
Inlägg: 122
nCo nCo är inte uppkopplad
Medlem
 
Reg.datum: May 2006
Inlägg: 122
Hej!

Skulle behöva tips på hur jag enklast bockar i ett par checkboxar beroende på ett val som görs
i en input select, helst genom en enkel onChange.

Jag har alltså ett antal val i en databas t.ex

MODELL, FUNKTION1, FUNKTION2, FUNKTION3
A100, 1, 0, 0
A101, 1, 1, 0

Selecten visar tillgängliga modeller. Sen har jag checkboxar som representerar de olika funktionerna 1-3. Jag vill helt enkelt att beroende på modell man väljer i listan så skall checkboxarna markeras enligt databasen. Det är klassisk ASP i botten som kallar på
javan. Egentligen är väl svårigheten att populera javan men datat från databasen via ASP?

Tacksam för idéer för jag suger på java!

Min kod än så länge:
Kod:
<script type="text/javascript">
function check(){
if (document.myform.values.selectedIndex == 1) {
document.myform.FUNKTION1.checked = true;
document.myform.FUNKTION2.checked = false;
document.myform.FUNKTION3.checked = false;
} else if (document.myform.values.selectedIndex == 2) {
document.myform.FUNKTION1.checked = true;
document.myform.FUNKTION2.checked = true;
document.myform.FUNKTION3.checked = false;
} else if (document.myform.values.selectedIndex == 3) {
document.myform.FUNKTION1.checked = true;
document.myform.FUNKTION2.checked = true;
document.myform.FUNKTION3.checked = true;
}
}
</script>

<html>
<head>
</head>
<body>
<form name=myform>
<select onChange="javascript:check();" name="values">
<option>Välj modell...</option>
<option value="#">MODELL1</option>
<option value="#">MODELL2</option>
<option value="#">MODELL3</option>
 </select>
 <p>
 FUNKTION1<input type="checkbox" name="FUNKTION1" value="">*
 FUNKTION2<input type="checkbox" name="FUNKTION2" value="">*
 FUNKTION3<input type="checkbox" name="FUNKTION3" value="">
 </p>
</form>
</body>
</html>
nCo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-09-01, 14:04 #2
najks avatar
najk najk är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Oct 2005
Inlägg: 1 224
najk najk är inte uppkopplad
Har WN som tidsfördriv
najks avatar
 
Reg.datum: Oct 2005
Inlägg: 1 224
typ
Kod:
if (this.value == 'värde1') {
document.getElementById('checkbox1').checked=true;
}
najk är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-09-01, 19:02 #3
nCo nCo är inte uppkopplad
Medlem
 
Reg.datum: May 2006
Inlägg: 122
nCo nCo är inte uppkopplad
Medlem
 
Reg.datum: May 2006
Inlägg: 122
Svarar på mig själv med lösningen, kanske är intressant för någon. Valde att populera selecten med en komma-separerad sträng som value. Enklare än så kunde det nästan inte bli. Sen splitta i javan och loopa.

Kod:
<script type="text/javascript">
function check(){
var arrayFunc = document.getElementById("modell").value.split(",");
for (i = 0; i < arrayFunc.length; i++)
{
if (arrayFunc[i] == 1) {
document.getElementById("FUNKTION"+i).checked = true;
} else {
document.getElementById("FUNKTION"+i).checked = false;
 }
 }
}
</script>

<html>
<head>
</head>
<body>
<form name=myform>
<select onChange="javascript:check();" name="modell" id="modell">
<option>Välj modell...</option>
<option value="1,0,0">MODELL1</option>
<option value="1,1,0">MODELL2</option>
<option value="1,1,1">MODELL3</option>
 </select>
 <p>
 FUNKTION1<input type="checkbox" id="FUNKTION0" value="">
 FUNKTION2<input type="checkbox" id="FUNKTION1" value="">
 FUNKTION3<input type="checkbox" id="FUNKTION2" value="">
 </p>
</form>
</body>
</html>
nCo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-09-01, 19:39 #4
Alexs avatar
Alex Alex är inte uppkopplad
Administratör
 
Reg.datum: Sep 2004
Inlägg: 1 621
Alex Alex är inte uppkopplad
Administratör
Alexs avatar
 
Reg.datum: Sep 2004
Inlägg: 1 621
Inte för att vara den som är den, men du bör lära dig att skilja på Javascript och Java. Två helt olika saker.
__________________
@Zn4rK - Börja blogga - Paintball i Göteborg
Det jag skriver är mina personliga åsikter och återspeglar inte vad WN eller andra företag jag representerar tycker.
Alex är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-09-01, 19:55 #5
Lindahl Lindahl är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2004
Inlägg: 854
Lindahl Lindahl är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2004
Inlägg: 854
Sen kan det vara trevligt att rensa bort några onödiga rader kod, om man är lagd åt det hållet...
Kod:
<script type="text/javascript">
function check(){
  var arrayFunc = document.getElementById("modell").value.split(",");
  for (i=0; i<arrayFunc.length; i++)
    document.getElementById("FUNKTION"+i).checked = (arrayFunc[i] == 1);
}
</script>
Lindahl är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-09-02, 00:53 #6
nCo nCo är inte uppkopplad
Medlem
 
Reg.datum: May 2006
Inlägg: 122
nCo nCo är inte uppkopplad
Medlem
 
Reg.datum: May 2006
Inlägg: 122
Tack, det blev renare. Trodde alla dessa fnuttar var tvugna att vara med...
nCo är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 05:15.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017