Tema: No mostrar
Ver Mensaje Individual
  #8 (permalink)  
Antiguo 21/07/2008, 09:30
pcadict0
 
Fecha de Ingreso: abril-2008
Mensajes: 70
Antigüedad: 16 años, 1 mes
Puntos: 1
Respuesta: No mostrar

Hola nuevamente Derkenuke!!!!!!

Ante todo, reiterarte mi más sincero agradecimiento por todas las molestias q t has tomado, no m cansaré d repetirlo. Gracias.


Por otro lado, debo d ser muy torpe ; pues no consigo hacer funcionar tu ejemplo

Esto es lo q tengo, siguiendo los pasos dados por ti:

Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"

<
html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es"
<
head
<
meta http-equiv="Content-type" content="text/html;charset=iso-8859-1" /> 
<
meta name="Author" content="derkeNuke" /> 
<
title>Página nueva</title
<
style type="text/css"

</
style
</
head

<
body



<
form action="nuevo_combobox.html" method="GET" name="frm"  onsubmit="muestraElOculto()"
    <
select name="loc" onchange="cambiar(this.form.zona)"
        <
option>Cualquier ubicación</option
        <
option>Agaete</option
        <
option>Agüimes</option
    </
select
    <
select name="zona" style="visibility: hidden;">     
    </
select
    <
label>
    <
input name="Submit" type="submit" onclick="muestraElOculto()" value="Enviar" />
    </
label>
</
form



<
script type="text/javascript"
<!-- 


function 
addOpt(oCntrliPossTxtsVal){ 
    var 
selOpcion=new Option(sTxtsVal); 
    eval(
oCntrl.options[iPos]=selOpcion); 

function 
cambiar(oCntrl){ 
    while (
oCntrl.lengthoCntrl.remove(0); 
    
oCntrl.style.visibility="visible"
    switch (
document.frm.loc.selectedIndex){ 
        case 
0
        
oCntrl.style.visibility="hidden"
        break; 
        case 
1
        
addOpt(oCntrl0"Cualquier ubicación""%%"); 
        
addOpt(oCntrl1"Puerto de las Nieves""(Puerto de Las Nieves)"); 
        
addOpt(oCntrl2"Valle de Agaete""(Valle de Agaete)"); 
        break; 
        case 
2
        
addOpt(oCntrl0"Cualquier ubicación""%%"); 
        
addOpt(oCntrl1"Villa de Agüimes""(Villa de Agüimes)"); 
        
addOpt(oCntrl2"Cruce de Arinaga""(Cruce de Arinaga)"); 
        
addOpt(oCntrl3"Playa de Arinaga""(Playa de Arinaga)"); 
        
addOpt(oCntrl4"Polígono industrial de Arinaga""(Polígono industrial de Arinaga)"); 
        break; 
    } 


function 
muestraElOculto() { 
    var 
comoEstaba document.frm.zona.style.visibility
    
document.forms["frm"].zona.style.visibility "visible"
    
setTimeout("document.frm.zona.style.visibility='"+comoEstaba+"'"100); 
}  

// --> 
</script> 
<script type="text/javascript"> 
<!-- 

function muestraElOculto() { 
    var comoEstaba = document.frm.zona.style.visibility; 
    document.forms["frm"].zona.style.visibility = "visible"; 
    setTimeout("document.frm.zona.style.visibility='"+comoEstaba+"'", 100); 
}  

// --> 
</script> 


</body> 
</html> 
Ciertamente, tienes toda la razón con lo d la línea esta
Código HTML:
addOpt((oCntrl.style.visibility="hidden")== 0, "","%%"); 
Es completamente ilógica y absurda. Sobra la mitad d la línea, d hecho sobra todo lo q yo le he añadido. Es el fruto d la desesperación cuando no tienes más recursos para hacerlo bien. M puse a probar y a retocar tu ejemplo a ver si conseguía q además d ocultar a la vista el campo zona pasase también su valor. Pero no funcionó y lo dejé "tal cual" mi último y frustrado intento. Al menos no da error (funciona tal y como lo hacía tu ejemplo aunque evidentemente con más caracteres sobrantes).

Nuevamente gracias infinitas
Un saludo