Foros del Web » Programando para Internet » Javascript »

me falla el document.getElementById

Estas en el tema de me falla el document.getElementById en el foro de Javascript en Foros del Web. Hola, me pasa una cosa curiosa, os cuento. tengo un formulario con un par de selects, uno dependiente del otro, para no refrescar la pagina ...
  #1 (permalink)  
Antiguo 10/11/2006, 02:07
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Pregunta me falla el document.getElementById

Hola,

me pasa una cosa curiosa, os cuento.

tengo un formulario con un par de selects, uno dependiente del otro, para no refrescar la pagina uso ajax.
el select padre es el nombre de la empresa, y el hijo son las secciones de la empresa escojida!
este serian los combos
Código PHP:
<select id="empresa" name="empresa" class="combo" onChange=" myajax.Link('productivitat/consultes.php?id=seccio&idempresa=' + this.value, 'seccio')">
        <option value="0">Selecciona Empresa...</option>
        <?
        
//Select per Tipus de Maquina
        
$busqueda="SELECT id_empresa,nom_empresa FROM empresa 
                   ORDER BY id_empresa"
;
        
$sql mysql_query($busqueda) or die(mysql_error());
        
// imprimir la select
        
while($reg=mysql_fetch_row($sql))
        {
            
// Pasem a HTML accents y ñ per la seva correcta visualitzacio
            
$reg[1]=htmlentities($reg[1]);
            
// Imprimir les opcions del select                
            
echo "<option value='".$reg[0]."'>".$reg[1]."</option>";
        }
        
?>            
    </select>
y el hijo
Código HTML:
<div id="seccio">
		<select id="id_seccio" name="id_seccio" class="combo">
			<option id="valor_defecto" value="0">Selecciona Seccion...</option>
		</select>
		</div> 
y la pagina q llamo para q me recargue el select hijo es la siguiente:
Código PHP:
$id=$_GET[id];
switch ($id) {
//////////////////////////////////////////////////////////////////////////////////////////////////
//Seccio/////////////////////////////////////////////////////////////////////////////////////////
    case "seccio":
        ?>
        <select id="id_seccio" name="id_seccio" class="caixes">
        <?
        $idempresa
=$_GET[idempresa];
        if (
$idempresa==0){ ?>
            <option value="0">Selecciona Seccion...</option>
        <? }else{
            if (
$idempresa!=3){
                
$cons=" AND id_subseccio = $idempresa";
            }
            
?>
                <option value="0">Todas las Secciones</option>
            <?
            
//Select per Tipus de Maquina
            
$busqueda="SELECT id_seccio,nom_seccio FROM seccio 
                       WHERE id_empresa = $idempresa
                       "
.$cons."
                       ORDER BY nom_seccio"
;
            
$sql mysql_query($busqueda) or die(mysql_error());
            
// imprimir la select
            
while($reg=mysql_fetch_row($sql))
            {
                
// Pasem a HTML accents y ñ per la seva correcta visualitzacio
                
$nom_seccio=htmlentities($reg[0]);
                
// Imprimir les opcions del select                
                
?><option value="<?=$reg[0];?>"><?=$nom_seccio;?></option>
            <? }
        }
?>
        </select>
    <?
    
break;
}
aparte tengo una validacion en javascript para mandar el msg derror en caso de q me escojan un valor.
aqui dejo la funcion:
Código PHP:
function validaajudes(formajudes){
    var 
empresaajuda document.getElementById('empresaajuda').options[document.getElementById('empresaajuda').selectedIndex].value
    
var id_seccio document.getElementById('id_seccio').options[document.getElementById('id_seccio').selectedIndex].value
    
var horesajuda document.formajudes.horesajuda.value;
    
alert(id_seccio);
    if (
horesajuda==|| horesajuda==''){
        
alert("Tienes que introducir unas Horas de ayuda.");
        return 
false;
    }else if (
empresaajuda==0){
        
alert("Tienes que introducir una Empresa.");
        return 
false;
    }else if (
id_seccio==0) {
        
alert("Tienes que introducir unas Seccion.");
        return 
false;    
    }else {
        
myajax.Form('formajudes''principal');
        
horesajuda.value=0;
    }    

el caso esta en q, con una empresa q tiene varias secciones el id me lo coje bien, pero con una segunda empresa q tengo, me muestra bien las secciones pero al hacer la comprovacion siempre me manda al error de q la seccion vale 0. estube mirando y remirando, incluso puse q el select hijo solo tubiera el codigo de la seccion y en el select me salia el codigo y la validacion javascript me decia q siempre vale 0. vuelvo a cambiar la empresa y funciona correctamente....
el caso q el codigo es el mismo y por eso me confunde...

a ver si mechais una mano,

saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #2 (permalink)  
Antiguo 13/11/2006, 04:27
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
hola!
sabeis xq me puede estar pasando esto????

saludos y gracias!
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
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 23:47.