Volker: Code vereinfachen

Beitrag lesen

Hi,

wie kann ich diesen langen Javascript-Code am Besten verkürzen? Wahrscheinlich indem ich this als Funktionsparameter übergebe? Aber wie?

Die einzigste Vereinfachung die mir gerade einfällt wäre, dass ich dann statt "document.getElementById("ipOpt2")" "document.getElementById(this)" schreiben könnte.

Vielleicht habt ihr noch ein paar Ratschläge an mich, das wäre super!

  
function ipconfig(value)  
{  
  if(value)  
  {  
  
   if(document.getElementById("ipOpt2").value=="dhcp")  
   {  
        document.myform.ip2.disabled = document.myform.sub2.disabled = document.myform.gate2.disabled = true;  
   }  
   else if(document.getElementById("ipOpt2").value=="dflt-ip")  
   {  
  
        document.myform.ip2.disabled = document.myform.sub2.disabled = document.myform.gate2.disabled = false;  
   }  
  
} else {  
  
   if(document.getElementById("ipOpt1").value=="dhcp")  
   {  
        document.myform.ip1.disabled = document.myform.sub1.disabled = document.myform.gate1.disabled = true;  
   }  
   else if(document.getElementById("ipOpt1").value=="dflt-ip")  
   {  
    document.myform.ip1.disabled = document.myform.sub1.disabled = document.myform.gate1.disabled = false;  
    }  
}  
}  

  
<select class="form-select2" id="ipOpt1" name="ipOpt1" onChange="ipconfig(0)">  
<option value="dhcp">DHCP</option>  
<option value="dflt-ip">Dflt-IP</option>  
</select>  
  
  
<select class="form-select2" id="ipOpt2" name="ipOpt2" onChange="ipconfig(1)">  
<option value="dhcp">DHCP</option>  
<option value="dflt-ip">Dflt-IP</option>  
</select>  

Gruß
Volker