Codigo Java Script generado por php no funciona !!!!!!

Iniciado por Lupin, 2 Abril 2011, 21:13 PM

0 Miembros y 1 Visitante están viendo este tema.

Lupin

K tal muchachos ;D ;D
Estoy haciendo una web con php y mysql y estoy comunicando dos Selects con Java Script , pero el codigo que me genera no funciona...
es decir el select "Empleados" ignora los click y seleccciones del Select "Departamentos".
No conozco mucho de Java Script pero tuve que incorporar codigo para hacerlo mas practico
Este es el codigo que genero con php
Alguien podria mirar el codigo, es probable que sea algo simple pero la verdad no doy con la solucion
Gracias

Citar<!DOCTYPE html PUBLIC "//- W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml-1transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta httpequiv="
ContentType"
content="text/html; charset=iso88591"
/>
<title>Listas Vinculadas </title>
<script type = 'text/javascript'>

         function SeleccionarEmpleados(depto) {
            var o;
            document.forms.frmDatos.lstEmpleados.disabled = true;
            
            if(depto == "Atención al Cliente") {
            o = document.createElement("OPTION");
            o.text = "Elvira";
            o.value = "Elvira";

            }
            if(depto == "Atención al Cliente") {
            o = document.createElement("OPTION");
            o.text = "Carmen";
            o.value = "Carmen";

            }
            if(depto == "Gerencia") {
            o = document.createElement("OPTION");
            o.text = "Ernesto";
            o.value = "Ernesto";

            }
            if(depto == "Ventas") {
            o = document.createElement("OPTION");
            o.text = "Edwin";
            o.value = "Edwin";

            }
            if(depto == "Ventas") {
            o = document.createElement("OPTION");
            o.text = "Oscar";
            o.value = "Oscar";

            }
            if(depto == "Ventas") {
            o = document.createElement("OPTION");
            o.text = "Betsy";
            o.value = "Betsy";

            }
                        
            document.forms.frmDatos.lstEmpleados.disabled = false;
            }
            
            
            
      function ComponerLista(depto) {
            document.forms.frmDatos.lstDepartamentos.disabled = true;
            document.forms.frmDatos.lstEmpleados.lenght = 0;
            SeleccionarEmpleados(depto);
            document.forms.frmDatos.lstDepartamentos.disabled = false;
            }
            
</script>
</head>
<body>
   <form name="frmDatos" action="" method="POST">
      <label>Departamentos
         <select name='lstDepartamentos' onChange = 'ComponerLista(this.value)'>
                     <option value = 'Atención al Cliente'>Atención al Cliente</option>

                     <option value = 'Gerencia'>Gerencia</option>
                     <option value = 'Ventas'>Ventas</option>
                        
            
         </select>
      </label>

      <label>Empleados
         <select name='lstEmpleados'></select>
      </label>
      
      </form>

      </body>
      </html>

Nakp

creo que estas accesando mal al formulario porque forms es un array :)

prueba con forms[0] en vez de forms.formulario, lo mismo para los objetos dentro del form :)
Ojo por ojo, y el mundo acabará ciego.

merolhack

Hola, deberías usar jQuery o Mootools para hacerlo, hay muchos demos que usan AJAX y te será más fácil implementar tus select anidados. Con jQuery solo usas algo como jQuery('#tu-formulario') { algo... }
PHP Web Developer
Joomla, jQuery, MySQL, CSS, etc...

Android APP Developer http://android-dev.tumblr.com/

Lupin

Gracias por tu sguerencia  Nakp, pero la verdad soy nuevo en javascript no entiendo mucho.
Con respecto a lo de Jquery tambien he pensado en eso, lo veo mas rapido y mas practico, porque con lo que intento voy a cargar toda mi base de datos como codigo html y se puede hacer mas lento. Saludos merolhack !!

merolhack

Mira te dejo este ejemplo, aunque ya esta un poco viejo pero aún asi te puede server, es PHP, MySQL y javascript (jQuery y AJAX)
Auto-populating Select Boxes using jQuery & AJAX
http://remysharp.com/2007/01/20/auto-populating-select-boxes-using-jquery-ajax/

Este es el demo:
http://remysharp.com/wp-content/uploads/2007/01/select.html
PHP Web Developer
Joomla, jQuery, MySQL, CSS, etc...

Android APP Developer http://android-dev.tumblr.com/

Lupin

Gracias por la info...de todas maneras lo aplico...cargar toda la base de datos en una pagina no me parece una buena idea .con mi script genero como 900 lineas de codigo...no me parece muy optimo !!!
Saludos  :rolleyes: