Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/09/2008, 03:21
Avatar de anlhp
anlhp
 
Fecha de Ingreso: agosto-2008
Mensajes: 121
Antigüedad: 16 años, 5 meses
Puntos: 1
Respuesta: listbox dinamico

bien amigo, te digo lo que hice para una de mis paginas, en ella tengo uno ( o los que quiera, pero en mi caso solo 2 ) dos <select />, pero ya lo puedes adaptar para convertirlo en listbox, eso es lo de menos, lo esencial es lo que te enseñare:

digamos que tenemos el elemento en mi pagina lo siguiente (esta ligado un poco con php pero no pasa nada, es para que captes la 'dinamicidad' ):
Código HTML:
...
<select name="films">
  <?php
  //pa no complicarte aqui tomo de una base de datos donde tenga por ejemplo
 //una lista de las pelis que tengo en mi biblioteca personal, y asi edite mi base
 //de datos a traves de la pagina o donde sea, esta seccion siempre se
 //acualizara sola mostrandome todas las pelis disponibles
  ?>
<!-- y aqui es donde hago mi magia porque aun no se bien como comunicar
       javascript y php, supon que queda asi la primera opcion -->

 <option value="1">Thunder Days</option>
...
</select>
...

...
<script type="text/javascript">
 function addFieldToList(){
 
 /*obtengo una matriz con todos mis 'select' y accedo al que me interesa
    de manera especifica*/
 var oList = document.getElementsByTagName('select')[0 o 1 o donde este];  

 var oListOption = document.createElement('option');
 oListOption.setAttribute('value', 'cualquier valor que quiera ke tenga');

 var oText = document.createTextNode('el texto que quieras de opcion');

 oListOption.appendChild(oText);
 oList.appendChild(oListOption);
 
}
...
</script>
...
y listo, aqui igual te dejo un escueto ejemplo funcional
Código HTML:
<html>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<head>
<script type="text/javascript">

 function addFieldToList(){
 
var oList = document.getElementsByTagName('select')[0];  

 var oListOption = document.createElement('option');
 oListOption.setAttribute('value', 'cualquier valor que quiera ke tenga');
 
 var oText = document.createTextNode('dinamismo.com');

 oListOption.appendChild(oText);
 oList.appendChild(oListOption);
 
}
</script>
</head>

<body>
<a style="cursor: pointer" onclick="addFieldToList()">agregar</a>
<select name='bla'>
 <option value="1">blablabla</option>
</select>

</body>
</html> 
espero que te sirva despues de haber dado tanta lata :P