Foros del Web » Programando para Internet » Javascript »

Frames

Estas en el tema de Frames en el foro de Javascript en Foros del Web. Tengo una paginas hecha por frames. En el menu de la izquierda hay dos botones algo asi: echo "<a href=\"articulos.php?categor=1\" target=\"main\"><img name=\"button_1\" border=\"0\" src=\"images/venta_up.jpg\" width=\"140\" ...
  #1 (permalink)  
Antiguo 19/12/2003, 11:08
Avatar de SeRNa  
Fecha de Ingreso: octubre-2003
Ubicación: Ibiza
Mensajes: 72
Antigüedad: 20 años, 6 meses
Puntos: 0
Frames

Tengo una paginas hecha por frames. En el menu de la izquierda hay dos botones algo asi:
echo "<a href=\"articulos.php?categor=1\" target=\"main\"><img name=\"button_1\" border=\"0\" src=\"images/venta_up.jpg\" width=\"140\" height=\"20\"></a>";

Que cuando hago click en ese boton, se me muestran los productos. Como puedo hacer para que además de llamar a la otra pagina, en donde esta el menu se cargue otros botones?

Espero haberme explicado
__________________
Una de las ventajas de ser desordenado es que uno está haciendo continuamente descubrimientos
  #2 (permalink)  
Antiguo 19/12/2003, 11:39
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Tendrías que gestionar la carga de X páginas y con sus respectivos "target" desde javascript.

Te remito a dicho foro para que te orienten mejor.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 20/12/2003, 05:47
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Lo que no me queda claro es si los nuevos enlaces substituyendo a los botones se han de cargar en el mismo documento o si están en otro nuevo y hay que cargar en ese marco una nueva página
  #4 (permalink)  
Antiguo 20/12/2003, 06:25
Avatar de SeRNa  
Fecha de Ingreso: octubre-2003
Ubicación: Ibiza
Mensajes: 72
Antigüedad: 20 años, 6 meses
Puntos: 0
Perdon por duplicar el mensaje. No sabía que lo habian pasao a este hijo, pense que lo tenia que poner yo aqui.

Lo volveré a explicar, a ver si queda más claro.

Mi intencion es que se carguen los nuevos botones en el mismo documento. En un principio en la pagina menu.php tengo dos botones. Cuando le des a uno de esos botones, que esos botones carguen otra pagina y en esa mismo documento, esos dos botones desaparezcan y aparezcan otros botones. Y a esos nuevos botones tengo que pasarle un variable que contiene un valor que tienen los otros botones.

Por el momento tengo hecho esto:

echo "<div id=\"divMenu\" style=\"position:absolute; top:0; left:30; height:100; width:80; visibility:hidden\">";
echo "<a href=\"menu.htm\" target=\"principal\">Menú</a>";
$consult = mysql_query ("select * from $articulos",$conexion);
$num = mysql_num_rows ($consult);
for ($i= 0; $i < $num; $i++){
$nombre = mysql_result ($consult, $i, "subcategoria_nombre");
$idsubcategoria = mysql_num_rows ($consult, $i, "subcategoria_id");
echo "<a href=\"articulos.php?categor=2&subcategor=$idsubca tegoria\" target=\"main\">$nombre</a>";
}
echo "</div>";

Lo que necesito es que los botones principales llamen a esa parte de codigo. Tengo una ligera idea de como se podria hacer pero no lo llego a sacar.
__________________
Una de las ventajas de ser desordenado es que uno está haciendo continuamente descubrimientos
  #5 (permalink)  
Antiguo 20/12/2003, 06:58
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Los parámetros que deban cargarse en los nuevos enlaces hay que sacarlos de la bd. Son en base al botón que previamente se haya pinchado? o ese dato yá estará cargado en el documento?
  #6 (permalink)  
Antiguo 20/12/2003, 07:20
Avatar de SeRNa  
Fecha de Ingreso: octubre-2003
Ubicación: Ibiza
Mensajes: 72
Antigüedad: 20 años, 6 meses
Puntos: 0
Esos datos de los nuevos botones, son sacados de la base de datos. Además los botones principales, les tiene que pasar otra variable a los nuevos botones.
<a href=\"articulos.php?categor=$categor&subcategor=$ idsubcategoria\" target=\"main\">$nombre</a>";

$categor = la variable que le pasa de los botones anteriores y $subcategoria, son los valores que se obtienen de la base de datos. Habran x botones, segun los registros que tenga esa tabla. Se generan automáticamente los segundos botones.
__________________
Una de las ventajas de ser desordenado es que uno está haciendo continuamente descubrimientos
  #7 (permalink)  
Antiguo 20/12/2003, 07:26
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Osea, que tras pinchar en el botón y antes de cambiar los botones por los enlaces hay que hacer una consulta a la base de datos?

Es que se puede usar javascript si no se cambia ni recarga la página.

Pero si hay que volver a llamar a la base de datos no merece la pena usar javascript, puedes hacerlo directamente desde el servidor con php
  #8 (permalink)  
Antiguo 20/12/2003, 07:43
Avatar de SeRNa  
Fecha de Ingreso: octubre-2003
Ubicación: Ibiza
Mensajes: 72
Antigüedad: 20 años, 6 meses
Puntos: 0
Es que todo en PHP no lo puedo hacer porque cuando pinchas en los botones principales, te cargan otra pagina y yo quiero que además de que me carguen la otra pagina, en esa misma pagina, se me cambien por los nuevos botones.
Me valdria con que me dijeras como puedo llamar a un <div id=\"divMenu\" style=\"position:absolute; top:0; left:30; height:100; width:80; visibility:hidden\"> con javascript desde un enlace. Luego ya me apañaria yo ;)
Lo he probado poniendo onclick en el enlace pero no me hace nada.
Gracias por tu ayuda y perdona por enredarte tanto.
__________________
Una de las ventajas de ser desordenado es que uno está haciendo continuamente descubrimientos
  #9 (permalink)  
Antiguo 20/12/2003, 07:47
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Basta con que a tu botón (o botones) les pongas lo siguiente


onclick="document.getElementById('divMenu').style. visibility ='visible'"

Pero yá te digo que como haya que pasar por la base de datos para cargar valores te volverá a cargar la página con la capa como la tienes definida de entrada (osea, oculta)

Yá me contarás qué tal....
  #10 (permalink)  
Antiguo 20/12/2003, 08:10
Avatar de SeRNa  
Fecha de Ingreso: octubre-2003
Ubicación: Ibiza
Mensajes: 72
Antigüedad: 20 años, 6 meses
Puntos: 0
Lo probaré asi. Ya te contare.
Muchas Gracias!!!
__________________
Una de las ventajas de ser desordenado es que uno está haciendo continuamente descubrimientos
  #11 (permalink)  
Antiguo 20/12/2003, 10:24
Avatar de SeRNa  
Fecha de Ingreso: octubre-2003
Ubicación: Ibiza
Mensajes: 72
Antigüedad: 20 años, 6 meses
Puntos: 0
Más o menos ya lo estoy sacando. Solo necesito una ayudita. Os dejo aqui el codigo fuente por si alguien lo quiere utilizar.
Botones Principales

<div id="divPrincipal" style="position:absolute; visibility:visible">
<div align="center"><br><a href="principal.html" target="_parent">::Atr&aacute;s:: </a></div>

<table width="72%" border="0" cellspacing="1" cellpadding="0" align="center" bgcolor="#000099">
<tr>
<td>

<?php

echo "<a href=\"articulos.php?categor=1\" target=\"main\" onMouseOver=\"MM_swapImage('button_1','','images/venta_over.jpg',1)\" onMouseOut=\"MM_swapImgRestore()\" onclick=\"document.getElementById('divMenu').style .visibility ='visible'\"><img name=\"button_1\" border=\"0\" src=\"images/venta_up.jpg\" width=\"140\" height=\"20\"></a>";
?>
</td>
</tr>
<tr>
<td>
<?php
echo "<a href=\"articulos.php?categor=2\" target=\"main\" onMouseOver=\"MM_swapImage('button_3','','images/promociones_over.jpg',1)\" onMouseOut=\"MM_swapImgRestore()\" img name=\"button_3\" border=\"0\" src=\"images/promociones_up.jpg\" width=\"140\" height=\"20\"></a>";
?>
</td>
</tr>
</table>
</div>

B]Botones Secundarios [/B]

echo "<div id=\"divMenu\" style=\"position:absolute; top:0; left:30; height:100; width:80; visibility:hidden\">";
$consult = mysql_query ("select * from $subcategoria",$conexion);
$num = mysql_num_rows ($consult);
echo "<table>";
for ($i= 0; $i < $num; $i++){
$nombre = mysql_result ($consult, $i, "subcategoria_nombre");
$idsubcategoria = mysql_result ($consult, $i, "subcategoria_id");onclick=\"document.getElementBy Id('divMenu').style.visibility ='visible'\"><
echo "<tr><td><a href=\"articulos.php?categor=$categor&subcategor=$ idsubcategoria\" target=\"main\">$nombre</a></td></tr>";
}
echo "</table></div>";

El problema que tengo, es en esta linea:
onclick=\"document.getElementById('divMenu').style .visibility ='visible'\">
Necesito decirle que esconda el divPrincipal y necesito pasarle al divMenu un parametro para que lo recoja divMenu.
__________________
Una de las ventajas de ser desordenado es que uno está haciendo continuamente descubrimientos
  #12 (permalink)  
Antiguo 20/12/2003, 10:32
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Lo añades detrás de la primera sentencia separándolo con el ;

onclick="document.getElementById('divMenu').style. visibility ='visible'; document.GetElementById('divPrincipal').style.visi bility='hidden'">


Y el parámetro a pasar... dame más datos, qué parámetro es? para los links?
  #13 (permalink)  
Antiguo 20/12/2003, 10:40
Avatar de SeRNa  
Fecha de Ingreso: octubre-2003
Ubicación: Ibiza
Mensajes: 72
Antigüedad: 20 años, 6 meses
Puntos: 0
Que rapido en contestar!

Tengo que pasarle lo que contiene categor. Es decir 1 si es ventas y 2 si son promociones.

Muchas gracias de nuevo.
__________________
Una de las ventajas de ser desordenado es que uno está haciendo continuamente descubrimientos
  #14 (permalink)  
Antiguo 20/12/2003, 10:44
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
OK, hay que pasar un 1 o un 2 pero hay que decir

algo = 1

o algo = 2

qué es ese algo? dónde quedará ese valor?

no se puede decir document.getElementById('divMenu').algo = 1

Debe de haber una variable que recoja ese valor, o bien necesitas añadir ese dato a una url o algo... por eso te preguntaba a qué hay que pasarle ese valor.
  #15 (permalink)  
Antiguo 20/12/2003, 10:52
Avatar de SeRNa  
Fecha de Ingreso: octubre-2003
Ubicación: Ibiza
Mensajes: 72
Antigüedad: 20 años, 6 meses
Puntos: 0
No sé si es que lo he puesto mal, pero no me funciona.
onclick=\"document.getElementById('divMenu').categ or=1.style.visibility ='visible'; document.GetElementById('divPrincipal').style.visi bility='hidden'\">
Me interesa ese valor porque en el enlace lo necesito para pasarse esos datos a otra pagina.
<a href=\"articulos.php?categor=$categor&subcategor=$ idsubcategoria\" target=\"main\">$nombre</a>
En ese enlace, es cuando uso categor y esta en divmenu.
__________________
Una de las ventajas de ser desordenado es que uno está haciendo continuamente descubrimientos
  #16 (permalink)  
Antiguo 20/12/2003, 10:55
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Vale, yá entiendo.

No, no puedes ponerlo como lo has hecho. Para el navegador categor no es nada.

Te preparo el ejemplo, ahí te digo algo....
  #17 (permalink)  
Antiguo 20/12/2003, 11:04
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Bueno, si hay que darle a un link una dirección distinta de la cargada previamente (que es el caso) debes re-escribirla en forma dinámica. Así que dale un id al link al que se le deba asignar ese valor y desde el botón en donde cambias la visibilidad a las capas añades una tercera sentencia tal que así:

<a id="link" href=\"articulos.php?categor=$categor&subcategor=$ idsubcategoria\" target=\"main\">$nombre</a>


onclick="document.getElementById('divMenu').style. visibility ='visible'; document.GetElementById('divPrincipal').style.visi bility='hidden';document.getElementById('link').href='articulos.p hp?categor=' + 1">


A ver si eso te sirve
  #18 (permalink)  
Antiguo 20/12/2003, 11:21
Avatar de SeRNa  
Fecha de Ingreso: octubre-2003
Ubicación: Ibiza
Mensajes: 72
Antigüedad: 20 años, 6 meses
Puntos: 0
No me ha funcionado lo que me has puesto. Lo que haré es poner un parche. Es decir que creare otro divMenu2. Y como solo tengo dos opciones. Pos tendre uno para cada uno y le pondre el valor fijo y ya esta.
Lo que no consigo es que cuando llamo al otro menu, se esconda el principal.
A ver si ves el fallo porque yo no.
onclick=\"document.getElementById('divMenu').style .visibility ='visible'; document.GetElementById('divPrincipal').style.visi bility='hidden'\">
__________________
Una de las ventajas de ser desordenado es que uno está haciendo continuamente descubrimientos
  #19 (permalink)  
Antiguo 20/12/2003, 11:24
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
pues así a ojo y re-ojo yo lo veo bien... ¿te sale algún error javascript? (la alertita amarilla que sale en el estatus abajo a la izquierda)
  #20 (permalink)  
Antiguo 20/12/2003, 11:42
Avatar de SeRNa  
Fecha de Ingreso: octubre-2003
Ubicación: Ibiza
Mensajes: 72
Antigüedad: 20 años, 6 meses
Puntos: 0
cuando pongo solo que muestre el otro menu, no da ningun error. El problema es cuando pongo que oculte uno y se vea el otro. Me sale un error en javascript y es que el objeto no acepta esta propiedad o metodo y en la linea donde es donde pongo que esto <?php
__________________
Una de las ventajas de ser desordenado es que uno está haciendo continuamente descubrimientos
  #21 (permalink)  
Antiguo 20/12/2003, 12:06
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Pero esa línea <? no debe llegar al navegador...


¿se puede ver en algún lado? es que pueden ser tantas cosas....
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 01:16.