Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/11/2012, 13:50
Avatar de Sumerio
Sumerio
 
Fecha de Ingreso: octubre-2009
Mensajes: 195
Antigüedad: 14 años, 6 meses
Puntos: 6
Pregunta Consulta de como mejorar mi funcion javascript

Hola, tengo una consulta tengo una funcion javascript que me activa y desactiva un grupo de combos por medio de un checkbox, solo que el punto es que quiero generalizarlo, para traer el id de cada combo y checkbox por cada activacion y no por todo como se muestra en mi funcion javascript, el punto principal es que me tiene que funcionar el window.onload para me cargue la funcion al cargarse la pagina, les muestro mi codigo:

Código:
function activarCombos() {
		
		var f = document.forms[0];
		
		var chkMena = document.getElementById("menaChk");			
		var cbxMena1 = document.getElementById("mineralMena1");
		var cbxMena2 = document.getElementById("mineralMena2");
		var cbxMena3 = document.getElementById("mineralMena3");
		var cbxMena4 = document.getElementById("mineralMena4");
		
		var chkGan = document.getElementById("mnGanChk");			
		var cbxGanga1 = document.getElementById("mineralGanga1");
		var cbxGanga2 = document.getElementById("mineralGanga2");
		var cbxGanga3 = document.getElementById("mineralGanga3");
		var cbxGanga4 = document.getElementById("mineralGanga4");
		
		var chkCaj = document.getElementById("mnCaChk");			
		var cbxRoca1 = document.getElementById("mineralRoca1");
		var cbxRoca2 = document.getElementById("mineralRoca2");
		var cbxRoca3 = document.getElementById("mineralRoca3");
		var cbxRoca4 = document.getElementById("mineralRoca4");
		
		var chkMin = document.getElementById("mineralNoChk");			
		var cbxMin1 = document.getElementById("mineralNoMin1");
		var cbxMin2 = document.getElementById("mineralNoMin2");
		var cbxMin3 = document.getElementById("mineralNoMin3");
		var cbxMin4 = document.getElementById("mineralNoMin4");
		
		var chkNoGan = document.getElementById("mnNoGanChk");			
		var cbxNoGanga1 = document.getElementById("mineralNoGanga1");
		var cbxNoGanga2 = document.getElementById("mineralNoGanga2");
		var cbxNoGanga3 = document.getElementById("mineralNoGanga3");
		var cbxNoGanga4 = document.getElementById("mineralNoGanga4");
		
		var chkNoCaj = document.getElementById("mnNoCaChk");			
		var cbxNoRoca1 = document.getElementById("mineralNoRoca1");
		var cbxNoRoca2 = document.getElementById("mineralNoRoca2");
		var cbxNoRoca3 = document.getElementById("mineralNoRoca3");
		var cbxNoRoca4 = document.getElementById("mineralNoRoca4");
				
		
		if (chkMena.checked) {
			cbxMena1.disabled = false;
			cbxMena2.disabled = false;
			cbxMena3.disabled = false;
			cbxMena4.disabled = false;			
		}else{	
			cbxMena1.disabled = true;
			cbxMena2.disabled = true;
			cbxMena3.disabled = true;
			cbxMena4.disabled = true;						
		}
		
		if (chkGan.checked) {		
			cbxGanga1.disabled = false;
			cbxGanga2.disabled = false;
			cbxGanga3.disabled = false;
			cbxGanga4.disabled = false;			
		}else{			
			cbxGanga1.disabled = true;
			cbxGanga2.disabled = true;
			cbxGanga3.disabled = true;
			cbxGanga4.disabled = true;
		}
		
		if (chkCaj.checked) {		
			cbxRoca1.disabled = false;
			cbxRoca2.disabled = false;
			cbxRoca3.disabled = false;
			cbxRoca4.disabled = false;			
		}else{			
			cbxRoca1.disabled = true;
			cbxRoca2.disabled = true;
			cbxRoca3.disabled = true;
			cbxRoca4.disabled = true;						
		}
		
		if (chkMin.checked) {
			cbxMin1.disabled = false;
			cbxMin2.disabled = false;
			cbxMin3.disabled = false;
			cbxMin4.disabled = false;			
		}else{	
			cbxMin1.disabled = true;
			cbxMin2.disabled = true;
			cbxMin3.disabled = true;
			cbxMin4.disabled = true;						
		}
		
		if (chkNoGan.checked) {		
			cbxNoGanga1.disabled = false;
			cbxNoGanga2.disabled = false;
			cbxNoGanga3.disabled = false;
			cbxNoGanga4.disabled = false;			
		}else{			
			cbxNoGanga1.disabled = true;
			cbxNoGanga2.disabled = true;
			cbxNoGanga3.disabled = true;
			cbxNoGanga4.disabled = true;						
		}
		
		if (chkNoCaj.checked) {		
			cbxNoRoca1.disabled = false;
			cbxNoRoca2.disabled = false;
			cbxNoRoca3.disabled = false;
			cbxNoRoca4.disabled = false;			
		}else{			
			cbxNoRoca1.disabled = true;
			cbxNoRoca2.disabled = true;
			cbxNoRoca3.disabled = true;
			cbxNoRoca4.disabled = true;						
		}
		
	}
	
			
	 window.onload = function(){     	
     	
		 activarCheckbox();
		 activarCombos();	
		 //activarRadios2();
		 //activarRadios3();
		 //activarRadios4();
     	 
     }
Espero sus comentarios