Ver Mensaje Individual
  #2 (permalink)  
Antiguo 30/04/2013, 03:05
franjgg
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Respuesta: Actvar y desactivar select mediante radio

Hola de nuevo que tal,

He conseguido solucionar el problema modificando el codigo de este modo:

Código Javascript:
Ver original
  1. function actualizarCampos(num_campos)
  2. {
  3.     zona = document.getElementById('campos_text');
  4.  
  5.  
  6.     zona.innerHTML = '';
  7.  
  8.     for(i = 1; i <= num_campos; i++)
  9.     {
  10.         if(i == 1){
  11.  
  12.                 zona.innerHTML = '<p class="titulos_cabeceras">Rellenar lista</p><p class="texto_explicativo_gris">Introduce todas tus referencias en plural</p>';
  13.         }
  14.                 zona.innerHTML += '<div style="width:47%; float:left; margin-bottom:10px"><span style="font-weight:bold;"><div style="width:90px; float:left; margin:0px 0px 0px 30px;">Artículo '+i+'</div></span><input type="text" name="fichero'+i+'" size="47"  maxlength="35"/></div>';
  15.     }    
  16. }
  17.  
  18. function showMe () {
  19.     var vis1;
  20.     var box1;
  21.     for (ii=1;ii<=2;ii++){
  22.         box1 = document.getElementById('radio' + ii);
  23.         vis1 = (box1.checked) ? "block" : "none";
  24.         document.getElementById('div' + ii).style.display = vis1;
  25.            
  26.         if(document.getElementById('radio' + ii).value == 'marcas'){
  27.             document.getElementById("nombre_estanteria_articulos").value="";
  28.             document.getElementById("nombre_estanteria_marcas").value="";
  29.             document.getElementById("numero_articulos").value="";
  30.             document.getElementById("numero_articulos_marcas").value="";
  31.             document.getElementById("nombre_estanteria_articulos").disabled = true;
  32.             document.getElementById("nombre_estanteria_marcas").disabled = true;
  33.             document.getElementById('articulos_marcas' + '1').style.display = 'block';
  34.             document.getElementById('articulos_marcas' + '2').style.display = 'block';
  35.             document.getElementById('radio_articulos_marcas1').checked = false;
  36.             document.getElementById('radio_articulos_marcas2').checked = false;            
  37.             document.getElementById('numero_articulos').disabled = true;   
  38.             document.getElementById('numero_articulos_marcas').disabled = true;
  39.             document.getElementById('articulos_marcas' + '3').style.display = 'block';             
  40.         }
  41.  
  42.         if(document.getElementById('radio' + ii).value == 'productos'){
  43.             document.getElementById("nombre_estanteria").value="";
  44.             document.getElementById("numero_articulos_general").value="";
  45.         }
  46.  
  47.     }
  48. }
  49.  
  50.  
  51. function show_articulos_marcas () {
  52.     var vis;
  53.     var box;   
  54.     for (i=1;i<=2;i++){
  55.         box = document.getElementById('radio_articulos_marcas' + i);
  56.         vis = (box.checked) ? "block" : "none";
  57.        
  58.         document.getElementById('articulos_marcas' + i).style.display = vis;
  59.         document.getElementById('numero_articulos').disabled = false;  
  60.         document.getElementById('numero_articulos_marcas').disabled = false;
  61.         document.getElementById("nombre_estanteria_articulos").disabled = false;
  62.         document.getElementById("nombre_estanteria_marcas").disabled = false;          
  63.  
  64.     }
  65.  
  66. }


el unico problema es que como se ve en la penrimera funcion este creando unos campos dinamicamente y cuando seleccionamos los checkbox en mozilla estos campos se ocultan pero IE los oculta cuando hacemos click sobre cualquier parte de la pagina, es un poco raro, a ver si alguien se le ocurre que puede estar pasando.

Un saludo