Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Frameworks JS (http://www.forosdelweb.com/f127/)
-   -   Actualizar Combobox sin refrescar pagina (http://www.forosdelweb.com/f127/actualizar-combobox-sin-refrescar-pagina-555589/)

Casper2007 08/02/2008 15:29

Actualizar Combobox sin refrescar pagina
 
le he dado muchas vueltas a este problema, pero la verdad no he encontrado solucion alguna... lo que pretendo realizar es lo siguiente: tengo una pagina principal en la que tengo un combobox, pero si por alguna razon no existe el articulo que busco en este combobox, que el usuario pueda capturarlo en otra pantalla que aparezca, y cuando regrese a la pagina principal, el combobox deberia ser actualizado con el articulo recien capturado... ojo... el combobox es uno solo y no depende de ningun otro... solo se actualizara cuando recien se capture el nuevo articulo....

les agradecere la atencion prestada a este problema que mucho dolor de cabeza me ha ocasionado... :'(


antes ya muchas gracias....:arriba:

GatorV 08/02/2008 15:36

Re: Actualizar Combobox sin refrescar pagina
 
Lo que puedes hacer es via JavaScript crear el elemento en el combobox:
Código:

<script type="text/javascript">
function insertaACombo( combo ) {
        var txt = prompt( "Define el nuevo valor" );
        combo.options[combo.options.length] = new Option( txt );
}

function agrega() {
        var combo = document.getElementById( "combo1" );
        insertaACombo( combo );
}
</script>

<select name="cb1" id="combo1">

</select>
<button onclick="agrega()">Agregar</a>

Saludos.

Casper2007 11/02/2008 15:10

Re: Actualizar Combobox sin refrescar pagina
 
gracias por tu respuesta, pero no se si no me di a entender :-), tengo una pagina padre y una hija, cuando necesito agregarle datos al combo abro la ventana secundaria (hija) y capturo los datos (estos datos los almaceno en una Base de Datos). cuando cierro la pagina, esta debe de volver a la pagina principal (padre) y automaticamente los datos almacenados en la BD se deben de mostrar en el Combobox que existe en la pagina principal.

de momento muchas gracias por tu ayuda... :arriba:

GatorV 11/02/2008 15:27

Re: Actualizar Combobox sin refrescar pagina
 
Usando el código que te deje, solo seria necesario que integraras una llamada AJAX para refrescar el contenido del combobox, busca en el foro scripts que hay para selects dependientes y adaptalo para solo refrescar el contenido.

Saludos.

Casper2007 12/02/2008 13:31

Re: Actualizar Combobox sin refrescar pagina
 
:'(.... la verdad estoy confundido como implementar lo que me pides... si te puede servir el codigo de mi pagina para explicar mejor mi problema...

pagina principal.php
Código PHP:

<html>
  <head>
    <title> titulo </title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
 
<script>
  var ventana_secundaria
  function abrirVentana(){
      //guardo la referencia de la ventana para poder utilizarla luego
      ventana_secundaria = window.open("agregarAcombo.php","miventana","toolbar=no,location=no,directories=no,menubar=no, resizable=no")
   }
</script>
  </head>
  <body>
<?php 
 
function Conectarse()
 {
  if (!(
$link=mysql_connect("localhost","root","pollpoly")))
  {  echo 
"Error conectanddo a la base de datos...";
     exit(); }
  if (!
mysql_select_db("correspondencia",$link))
  {   echo 
"Error seleccionando la base de datos...";
      exit(); }
      return 
$link;
 }
  function 
remitentest()
 {
  
$link=Conectarse();
  
$sql="SELECT nombre FROM remitentes";
  
$result=mysql_query($sql$link);
  
$i=0;
  while (
$row=mysql_fetch_row($result)) 
   { 
       echo 
"<option value=".$row[$i].">".$row[$i]."</option>\n"
   } 
 }
?>
<!--- tabla principal que engloba a todas las demas tablas --->
<table width="460" border="1" align="center" cellspacing="0" bgcolor="#FFFFFF">
  <tr>
    <td height="20" valign="top" ><div align="center"><span class="Estilo7">&nbsp;Datos del Documento</span></div></td>
  </tr>
  <tr>
    <td height="128" valign="top"><table width="100%" border="0" cellpadding="0" cellspacing="0"></td>
        <tr>
          <td width="447" height="120" valign="top" bgcolor="#FFFFFF"><p class="Estilo3"><br>
            <p class="Estilo3">&nbsp;Remitente:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
             <select name=remitente id=remitente>
                  <?php remitentest(); ?>
              </select>
                <input type=button value="..." onclick="abrirVentana()">
              </table></td>
  </tr>
</table> 
</body>
</html>

pagina agregarAcombo.php
Código PHP:

  
<?php 
   
include("conexion.php"); 
   
$link=Conectarse(); 
   
$result=mysql_query("SELECT * FROM remitentes",$link); 
    
?>
       <table width="747" align="center" cellpadding="0"" cellspacing="0" bgcolor="#FFFFCC"0>
      <tr bgcolor="#FFFFFF">
         <form action="agregar_remitentes.php">
        </tr>
      <tr bgcolor="#FFFFFF">
                <td width="736" valign="top">
          <table width="100%" border="0" cellpadding="0" cellspacing="0">
            <tr>
              <td width="716" height="132" valign="top" style="border:0.5pt solid #000000";>
                <p class="Estilo3">
                  <br>                  &nbsp;&nbsp;&nbsp;Nombre:
                  <INPUT TYPE="text" NAME="NOMBRE"  SIZE="60" MAXLENGTG="60">                  &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;
                  <p class="Estilo3" style="margin-bottom: 0">                    &nbsp;&nbsp;&nbsp;Cargo:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                    <INPUT TYPE="text" NAME="CARGO"  SIZE="50" MAXLENGTG="50">                    &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;
                 * </p>
                  <p class="Estilo3">
                    &nbsp;&nbsp;&nbsp;Dependencia : 
                    <INPUT TYPE="text" "NAME="DEPENDENCIA" onkeypress="return validar(event)" SIZE="80" MAXLENGTG="80">
                  </p>
              </td>
            </tr>
          </table>
        </td>
      </tr>
      </table>
        <div align="center">
      <INPUT TYPE="submit" NAME="accion" VALUE="Grabar" >
      <INPUT TYPE=button VALUE="Cerrar" onclick="cerrarse()">
    </div>
    </form>
      </body>
</html>

a ver si con esto me pueden ayudar mejor y que lo puede implementar mejor... gracias de antemano

Bellenger 16/02/2008 17:24

Re: Actualizar Combobox sin refrescar pagina
 
Revisa este link...
www.librosweb.es/ajax/
...:patada:


La zona horaria es GMT -6. Ahora son las 11:16.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.