Foros del Web » Programando para Internet » Javascript »

Como dependiendo de una capa,me dirijo a dos paginas distintas

Estas en el tema de Como dependiendo de una capa,me dirijo a dos paginas distintas en el foro de Javascript en Foros del Web. Hola lo que estoy intentando hacer es que la hacer click en ocultar capa(Solo ida) se dirija a base3.php si no que se dirija a ...
  #1 (permalink)  
Antiguo 23/06/2011, 14:26
Avatar de sonia___oO  
Fecha de Ingreso: junio-2011
Mensajes: 32
Antigüedad: 12 años, 10 meses
Puntos: 1
Como dependiendo de una capa,me dirijo a dos paginas distintas

Hola lo que estoy intentando hacer es que la hacer click en ocultar capa(Solo ida) se dirija a base3.php si no que se dirija a base2.php, lo realize creando una variable 'comprueba' con valor inicial =0 , y al ingresar a la función capa(que se ejecuta cuando se ase click en 'solo ida' su valor cambie y sea =1 , luego al minuto de dirigirse a las paginas si es =1 que se dirija a base3.php si es 0 a base2.php.


Código PHP:

<script language="JavaScript">

var 
comprueba 0;
typeof comprueba;

function 
cambio(idCapa)//Funcion que realiza opcion:ida , ida y vuelta
{
var 
capa document.getElementById(idCapa);
var 
comprueba 1;
typeof comprueba;
capa.style.display = (capa.style.display == "none") ? "block" "none";
                    
}

function 
verifica () //Funcion que se ejecuta cuando se ase click en el boton enviar
{
    
OrigenValor document.getElementById('Origen').value;
    
document.write(comprueba);
                        
    if(
OrigenValor=='Seleccione Origen')
    {
        
alert ("Seleccione Origen");
    }
   else
  {
      if(
comprueba == 1)
      {
    
document.getElementById('frm').action='base3.php';
    
formulario document.frm["frm"]
    
formulario.submit()
       }
       if(
comprueba == 0)
    {
    
document.getElementById('frm').action='base2.php';
    
formulario document.frm["frm"]
    
formulario.submit()
                            
    }
        
    }
}
</script>

<html>

<div id="capa1">
<p>Fecha vuelta</p>
<select name="fechav"> 
<option value="Toda Fechav">Toda Fecha</option> 
<option value="01-07-2011">01/07/2011</option> 
</div>
<a href="#" onclick="cambio('capa1')" >Solo ida </a>


<input type="submit" value="Consultar" onclick="verifica()">

</html> 
EL problema es que no me ingresa a ninguna de las dos paginas, cuando muestro el valor siempre es 0 , solo es 1 cuando lo muestro dentro de la función cambio(), me da la impresión que como puse la variable comprueba fuera de las funciones cada ves que vuelve a ser 0.

Gracias por leer e intentar ayudar =)
  #2 (permalink)  
Antiguo 23/06/2011, 15:35
Avatar de goteen_mx  
Fecha de Ingreso: abril-2005
Ubicación: D.F.
Mensajes: 403
Antigüedad: 19 años
Puntos: 37
Respuesta: Como dependiendo de una capa,me dirijo a dos paginas distintas

Te falta la forma, y el evento creo que seria mejor ponerlo en el onsubmit e hice algunos cambios, si la capa activa es la 1 se va a base2, y si esta activa la 2 se va a la base1

Espero te sirva de referencia para lo que necesitas hacer.

Saludos.

Código Javascript:
Ver original
  1. <script language="JavaScript">
  2.  
  3. var comprueba = 0;
  4. function cambio(opc){
  5.    if(opc==1){
  6.        comprueba = 1;
  7.        document.getElementById('capa1').style.display="none";
  8.        document.getElementById('capa2').style.display="block";
  9.    }
  10.    else{
  11.        comprueba = 0;
  12.        document.getElementById('capa2').style.display="none";
  13.        document.getElementById('capa1').style.display="block";
  14.    }              
  15. }
  16.  
  17. function verifica () {
  18.    OrigenValor = document.getElementById('Origen').value;
  19.    if(OrigenValor=='Seleccione Origen')
  20.         alert ("Seleccione Origen");
  21.    else {
  22.      var     formulario = document.getElelementById("frm");
  23.       if(comprueba == 1)
  24.           document.getElementById('frm').action='base2.php';
  25.        if(comprueba == 0)
  26.             document.getElementById('frm').action='base1.php';
  27.         return true;
  28.     }
  29.    return false;
  30. }
  31. </script>

Código HTML:
Ver original
  1. <div id="capa1">capa1</div>
  2. <div id="capa2">capa2</div>
  3. <a href="#" onclick="cambio(1);" >Solo ida 1</a>
  4. <a href="#" onclick="cambio(2);" >Solo ida 2</a>
  5.  
  6. <form id="frm" onsubmit="return:verifica();">
  7. <p>Fecha vuelta</p>
  8. <select id="Origen">
  9.      <option value="Seleccione Origen">Seleccione Origen</option>
  10.      <option value="1">origen1</option>
  11.  
  12.  
  13. <select name="fechav">
  14.     <option value="Toda Fechav">Toda Fecha</option>
  15.     <option value="01-07-2011">01/07/2011</option>
  16.   </select>
  17. <input type="submit" value="Consultar" >
  18. </form>
__________________
Born to be free.
  #3 (permalink)  
Antiguo 23/06/2011, 16:31
Avatar de sonia___oO  
Fecha de Ingreso: junio-2011
Mensajes: 32
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Como dependiendo de una capa,me dirijo a dos paginas distintas

Hola gracias por responder , pero tengo una duda , es que yo tengo solo una capa , no se si lo estoy entendiendo mal , pero en el caso que sea solo una no podría haber un comprueba =1 en caso que sea capa1 y un comprueba=0 en caso de que.. no tengo mas capas .
  #4 (permalink)  
Antiguo 23/06/2011, 16:33
Avatar de sonia___oO  
Fecha de Ingreso: junio-2011
Mensajes: 32
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Como dependiendo de una capa,me dirijo a dos paginas distintas

de igual forma estoy intentando adaptarlo al mio , pero no se como hacerlo si tengo solo una capa
  #5 (permalink)  
Antiguo 23/06/2011, 17:12
Avatar de goteen_mx  
Fecha de Ingreso: abril-2005
Ubicación: D.F.
Mensajes: 403
Antigüedad: 19 años
Puntos: 37
Respuesta: Como dependiendo de una capa,me dirijo a dos paginas distintas

Código Javascript:
Ver original
  1. <script language="JavaScript">
  2.      
  3.     var comprueba = 0;
  4.     function cambio(opc){
  5.        if(opc==1){
  6.            comprueba = 1;
  7.            document.getElementById('capa1').style.display="none";
  8.        else{
  9.            comprueba = 0;
  10.            document.getElementById('capa1').style.display="block";
  11.        }              
  12.     }
  13.      
  14.     function verifica () {
  15.        OrigenValor = document.getElementById('Origen').value;
  16.        if(OrigenValor=='Seleccione Origen')
  17.             alert ("Seleccione Origen");
  18.        else {
  19.          var     formulario = document.getElelementById("frm");
  20.           if(comprueba == 1)
  21.               document.getElementById('frm').action='base2.php';
  22.            if(comprueba == 0)
  23.                 document.getElementById('frm').action='base1.php';
  24.             return true;
  25.         }
  26.        return false;
  27.     }
  28.     </script>

Código HTML:
Ver original
  1. <div id="capa1">capa1</div>
  2.  
  3.     <a href="#" onclick="cambio(1);" >Solo ida 1</a>
  4.  
  5.      
  6.     <form id="frm" onsubmit="return:verifica();">
  7.     <p>Fecha vuelta</p>
  8.     <select id="Origen">
  9.          <option value="Seleccione Origen">Seleccione Origen</option>
  10.          <option value="1">origen1</option>
  11.     </select>
  12.      
  13.      
  14.     <select name="fechav">
  15.         <option value="Toda Fechav">Toda Fecha</option>
  16.         <option value="01-07-2011">01/07/2011</option>
  17.       </select>
  18.     <input type="submit" value="Consultar" >
  19.     </form>


Saludos
__________________
Born to be free.
  #6 (permalink)  
Antiguo 23/06/2011, 17:37
Avatar de sonia___oO  
Fecha de Ingreso: junio-2011
Mensajes: 32
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Como dependiendo de una capa,me dirijo a dos paginas distintas

gracias intentare adaptarlo

Etiquetas: dependiendo, distintas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:38.