• Publicidad

ayuda uso onload

Discute todo acerca de JavaScript así como DHTML o la tecnología AJAX.

ayuda uso onload

Notapor marcosss » 2007-05-29 11:59 @540

¡Hola!

Tengo un problemilla de php y javascript que no sé solucionar y he probado ya varias soluciones pero ninguna me funciona. A ver si podéis decirme por qué no me funciona esta o qué fallo le encontrais.

El problema es que hay un número indeterminado en la base de datos de titulaciones para cada profesor, y se tienen que mostrar, pero quiero mostrarlos desde javascript porque quiero que el usuario pueda eliminar también esa titulación, es decir, que le salga el nombre de la titulación y al lado un botón de 'borrar'. Y el código para mostrarlo en javascript es el siguiente:

Código: Seleccionar todo
<script type="text/javascript">
var i=1;
function editar(){
var n=document.f.nTitulaciones.value;
alert('n');
alert('Hola');
  fi2 = document.getElementById('fiel1');
  contenedor = document.createElement('div1');
  contenedor.id = 'div1'+i;
  fi.appendChild(contenedor);


while (i<n){
   
  ele = document.createElement('input');
  ele.type = 'text';
  ele.name = 'nombreTitulacion'+i;
  ele.size = '40';
  ele.value=document.f.nombreTitulacion+i.value;
  contenedor.appendChild(ele);
 
  ele = document.createElement('input');
  ele.type = 'button';
  ele.value = 'Borrar';
  ele.name = 'div1'+i;
  ele.onclick = function () {borrar1(this.name)}
  contenedor.appendChild(ele);
  i++;

}
}
</script>



Y ese código lo llamo desde php con el evento 'onload', pero no sé si lo ,llamo bien:


Código: Seleccionar todo
<strong>Titulaciones del profesor</strong>      <br><br>';
echo'
<fieldset id="fiel1">';
   $i=0;
   $tabla=array();
   
   while ($fila1= mysql_fetch_assoc($result1)){
      
      $tabla[$i]=$fila['nombreTitulacion'];
      $i++;

   }
    $j=0;//Guardo en campos ocultos el número de titulaciones del profesor y las titulaciones
   echo'<input name="nTitulaciones" type="hidden" value="'.$i.'">';
   while ($j<$i){
echo'
        <input name="nombreTitulacion'.$j.'" type="hidden" value="'.$tabla[$j].'">';
      $j++;
   }
   
echo'
<input onload="editar()">   
</fieldset>';



El código para llamar a la función editar al cargar la página es el <input onload="editar()"> y no sé si está bien.

Muchas gracias.
marcosss
Perlero nuevo
Perlero nuevo
 
Mensajes: 87
Registrado: 2007-05-14 06:23 @307

Publicidad

Notapor elnico » 2008-10-18 15:39 @693

Hola.
En todo caso el onload lo tendrias que poner en el <body onLoad="tufuncion()"> en vez del input.
Otra alternativa es usar algun framework de javascript (yo recomiendo el método $(document).ready de jquery) para ejecutar código en el cliente apenas se habilite DOM, con lo que se cargaría mas rápido tu web y sin errores.
elnico
Perlero nuevo
Perlero nuevo
 
Mensajes: 69
Registrado: 2007-09-09 14:44 @656


Volver a JavaScript

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados

cron