Ver Mensaje Individual
  #4 (permalink)  
Antiguo 17/07/2011, 10:27
patypecas
 
Fecha de Ingreso: julio-2010
Mensajes: 91
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: cambiar div segun Select option

Cita:
Iniciado por themitnew Ver Mensaje
Puedes hacer lo siguiente... utilizando el evento onchange del select. llamas a un metodo javascript que te cambiará el contenido de tu div donde quieres q se muestre la descripcion

Código HTML:
Ver original
  1. <select name="tags" onchange="mostrar(this);" >
  2.         <option value="1">uno</option><!-- Si Selecciono uno-->
  3.         <option value="2">dos</option>
  4.         <option value="3">tres</option>
  5.         <option value="4">cuatro</option>
  6.     </select>
  7.    
  8.     <div id="describe"></div>

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.         function mostrar( obj ){
  3.             var container = document.getElementById("describe") ;
  4.             container.innerHTML = " Item seleccionado.. " + obj[ obj.selectedIndex ].value ;
  5.         }
  6.     </script>



Ahora si lo que quieres es acceder a la base de datos para consultar su descripcion puedes hacer esto..
Solo cambias el metodo mostrar

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.         function getObjectAjax () {
  3.             var xmlHttp ;
  4.             if (window.ActiveXObject) {
  5.                 xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
  6.             } else if (window.XMLHttpRequest) {
  7.                 xmlHttp = new XMLHttpRequest();
  8.             }
  9.             return xmlHttp;
  10.         }
  11.        
  12.         function mostrar( obj ){
  13.             var ajax = getObjectAjax();
  14.             var url = "miweb.com/getdescription.php?id=" + obj[ obj.selectedIndex ].value ;
  15.             ajax.open( "post", url );
  16.             ajax.onreadystatechange = function () {
  17.                 if ( ajax.readyState == 4 ) {
  18.                     result = json_decode( ajax.responseText  );
  19.                     var container = document.getElementById("describe") ;
  20.                     container.innerHTML = ajax.responseText ;
  21.                 }
  22.             }
  23.             ajax.send(null);
  24.         }
  25.     </script>

Fijate en tu variable url del metodo mostrar pones la url de un archivo que reciba el id y recupere la descripcion de la base de datos y le haces un echo
algo asi..

Código PHP:
Ver original
  1. <?php
  2. //  .. .. . . .. obteniendo descripcion
  3. $descr = 'algo que saque de la BD' ;
  4. echo $descr ;
  5. ?>


eso es todo..
estoy intendao con este ejemplo ajax pero creo que falta alguna clase de ajax cual es la que hace falta??