Avatar billede henriklaursen Nybegynder
11. marts 2003 - 12:11 Der er 10 kommentarer og
2 løsninger

Blokering af felter..

Hej.
en lile opgave .. jeg ikke helt selv kan få til at spille max.

I toppen af en side skal der være en dropdown boks.
I denne skal der være 2 valgmuligheder FE og KG.

Neden under skal der være 2 spalter af <input> tags
(6 i hver).

spalte 1 = 6 tags til KG
spalte 2 = 6 tags til FE

hvis man i drop down boksen vælger KG, så skal alle 6 felter i spalten med FE blokeres (disables).
og hvis man vælger FE, så skal KG-spalten blokeres.

nogle der lige hurtigt kan lave det ..

//Henrik
Avatar billede pyroman Nybegynder
11. marts 2003 - 12:46 #1
Hvad mener du med spalte?
Avatar billede henriklaursen Nybegynder
11. marts 2003 - 12:50 #2
Bare 6 <input> tags som står under hinanden..
<table>
<tr>
  <td>
    <!-- første spalte (den med KG)-->
  <input><br>
  <input><br>
  <input><br>
  <input><br>
  <input><br>
  <input><br>
</td>
<td>
  <!-- anden spalte den med FE -->
  <input><br>
  <input><br>
  <input><br>
  <input><br>
  <input><br>
  <input><br>
</td>
</tr>
</table
Avatar billede pyroman Nybegynder
11. marts 2003 - 13:11 #3
Nåh altså 2 kolonner? OK her kommer det...

<script language="javascript">
function disableInput(){
  if(document.minForm.minliste.value == "KG"){
    for(i=0;i<6;i++){
      document.minForm["kgInput"+i].disabled = true;
      document.minForm["feInput"+i].disabled =  false;
    }
  }else if(document.minForm.minListe.value == "FE"){
    for(i=0;i<6;i++){
      document.minForm["kgInput"+i].disabled = false;
      document.minForm["feInput"+i].disabled =  true;
    }
  }
}

Og på din dropdown:

<select name="minListe" onChange="disableInput();">
  <option>KG
  <option>FE
</select>

Jeg håber at det vil virke - ikke afprøvet

/Filip
Avatar billede pyroman Nybegynder
11. marts 2003 - 13:12 #4
Hov jeg mangler et

</sript>

efter javascript funktionen...
Avatar billede henriklaursen Nybegynder
11. marts 2003 - 13:29 #5
hmm..
kan ikke få det til at virke..
gider du ik liste en fuld HTML fil ?
hvor i det virker..
Avatar billede pyroman Nybegynder
11. marts 2003 - 13:29 #6
Og ups igen, jeg har byttet om på dem der bliver disabled, når man vælger "KG" skal FE jo disables -DOH!- nåh men det kan du bare rette ved at bytte om på dem hvor der står disabled=true og false eller i if-sætningerne skrive FE istedet for KG og omvendt...
Avatar billede pelkjaer Nybegynder
11. marts 2003 - 13:36 #7
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/JavaScript">
<!--
function resetInputs() {
  if (document.getElementById('myselect').value == "KG") {
    var spArr = document.getElementsByTagName('INPUT');
    for (i=0; i<spArr.length; i++) {
      if (spArr[i].id.indexOf("KG")!=-1) {
        if (spArr[i].disabled != false) spArr[i].disabled = false;
        else spArr[i].disabled = false;
            }
      if (spArr[i].id.indexOf("FE")!=-1) {
        if (spArr[i].disabled != true) spArr[i].disabled = true;
        else spArr[i].disabled = true;
      }
    }
  }
    if (document.getElementById('myselect').value == "FE") {
    var spArr = document.getElementsByTagName('INPUT');
    for (i=0; i<spArr.length; i++) {
      if (spArr[i].id.indexOf("FE")!=-1) {
        if (spArr[i].disabled != false) spArr[i].disabled = false;
        else spArr[i].disabled = false;
            }
      if (spArr[i].id.indexOf("KG")!=-1) {
        if (spArr[i].disabled != true) spArr[i].disabled = true;
        else spArr[i].disabled = true;
      }
    }
  }
    if (document.getElementById('myselect').value == "") {
    var spArr = document.getElementsByTagName('INPUT');
    for (i=0; i<spArr.length; i++) {
      if (spArr[i].id.indexOf("KG")!=-1 || spArr[i].id.indexOf("FE")!=-1) {
        if (spArr[i].disabled != false) spArr[i].disabled = false;
        else spArr[i].disabled = false;
      }
    }
  }
}
//-->
</script>
</head>
<body>
<table border="0" cellspacing="0" cellpadding="5">
<tr>
<td colspan="2">
<select name="myselect" id="myselect" onchange="resetInputs();">
<option selected>Vælg fra listen</option>
<option value="KG">KG</option>
<option value="FE">FE</option>
</select>
</td>
</tr>
<tr>
<td><input name="KG1" type="text" id="KG1"></td>
<td><input name="FE1" type="text" id="FE1"></td>
</tr>
<tr>
<td><input name="KG2" type="text" id="KG2"></td>
<td><input name="FE2" type="text" id="FE2"></td>
</tr>
<tr>
<td><input name="KG3" type="text" id="KG3"></td>
<td><input name="FE3" type="text" id="FE3"></td>
</tr>
<tr>
<td><input name="KG4" type="text" id="KG4"></td>
<td><input name="FE4" type="text" id="FE4"></td>
</tr>
<tr>
<td><input name="KG5" type="text" id="KG5"></td>
<td><input name="FE5" type="text" id="FE5"></td>
</tr>
<tr>
<td><input name="KG6" type="text" id="KG6"></td>
<td><input name="FE6" type="text" id="FE6"></td>
</tr>
</table>
</body>
</html>
Avatar billede pyroman Nybegynder
11. marts 2003 - 13:43 #8
Okay Pelkjear var lidt hurtigere end mig, men jeg kan ikke helt se hvad forskellen er på hans og mit script? Kan man ikke bruge document.minForm["input"+i].disabled?
Avatar billede pelkjaer Nybegynder
11. marts 2003 - 14:16 #9
Forskellen er at min er dom kode og det er din ikke. De gør stort set det samme, personligt synes jeg min er mere "sexy" omend den nok burde kortes ned til en løkke only.
Avatar billede pyroman Nybegynder
11. marts 2003 - 14:30 #10
Det er den også - men en forkortelse kunne ikke skade. Nu er det også fordi jeg ikke er så opdateret i den DOM standartisering, fordi jeg mest holder mig til flash kategorien. Men et spm til 100, hvor jeg kunne svare - det kunne ikke holde mig tilbage : )
Avatar billede henriklaursen Nybegynder
11. marts 2003 - 15:23 #11
pyroman smid lige et svar.
jeg har fået utrolig meget ud af begge svar, så i deler i porten..
Avatar billede pyroman Nybegynder
11. marts 2003 - 19:13 #12
tak skal du have, men brug helst pelkjærs version, den er lidt længere, men den er mest fremtidssigtet og der kan ikke opstå så mange idiotfejl...
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