Foros del Web » Programando para Internet » Javascript »

problema con llamada a función JavaScript

Estas en el tema de problema con llamada a función JavaScript en el foro de Javascript en Foros del Web. Hola, tengo un problema. No consigo que se ejecute la llamada a una función de JavaScript que está llamada desde el evento onClick de un ...
  #1 (permalink)  
Antiguo 18/08/2011, 04:11
 
Fecha de Ingreso: agosto-2011
Mensajes: 14
Antigüedad: 12 años, 8 meses
Puntos: 0
Pregunta problema con llamada a función JavaScript

Hola, tengo un problema. No consigo que se ejecute la llamada a una función de JavaScript que está llamada desde el evento onClick de un input text.

El javascript comienza en la línea 10 y los imputs que deberian quedarse en blancos al hacer click están en las líneas 31 y 34

El código es el siguiente:

Código HTML:
Ver original
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  2.     <title>login</title>
  3.  
  4.     <META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=ISO-8859-1">
  5.  
  6.     <link rel="STYLESHEET" type="text/css" href="estilo.css">
  7.                      
  8.                        <script type="javascript">
  9.             <!--
  10.                 function desaparece(id)
  11.                     {
  12.                        var campo = document.getElementById(id);
  13.                        campo.innerHTML = "";                           
  14.                     }
  15.                            
  16.                       //-->
  17.                       </script>      
  18.  
  19. </head>
  20.  
  21.  
  22.  
  23. <div align="center">
  24.  
  25.     <form action='inicioSesion.php?formulario=&nomcampo=' method='POST'    
  26.     class='formulario'  style='margin: 0px 0px 0px 0px;'>
  27.  
  28.         <input  type='text' name = 'nuevo_nombre' id='txtNombre'    
  29.         onclick="desaparece('txtNombre')" value='Introduce nombre'>
  30.  
  31.         <input  type='text' name = 'nuevo_pass' id='txtPass'  
  32.         onclick="desaparece('txtPass')" value='Introduce password'>
  33.  
  34.         <table class="tablacalendario" align="center" cellspacing="3"
  35.         cellpadding="1" border="0">
  36.             <tr class="tit" colspan=7>     
  37.                 <td align="center">
  38.                     <input type="Submit" value="[ ENTRAR ]">
  39.                 </td>
  40.             </tr>
  41.          </table>
  42.     </form>
  43. </div>
  44.  
  45. </body>
  46.  
  47. </html>

Gracias de antemano!

un saludo
  #2 (permalink)  
Antiguo 18/08/2011, 05:30
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: problema con llamada a función JavaScript

¿No será mejor usar value?
Saludos.
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red
  #3 (permalink)  
Antiguo 18/08/2011, 05:32
 
Fecha de Ingreso: julio-2009
Mensajes: 8
Antigüedad: 14 años, 9 meses
Puntos: 1
Respuesta: problema con llamada a función JavaScript

Hola!!

He hecho algunas modificaciones en tu codigo, y he conseguido que funcionara...

La primera de ellas, para indicar el lenguaje a usar en el script, he utilizado el atributo "language" no "type".
Despues he borrado los comentarios que tenias, por dejar mas claro el codigo.
Y por ultimo, como el elemento cuyo contenido quieres modificar es un text, he usado campo.value, no campo.innerHTML.

Con estos cambios, la parte del script quedaria asi:

Código:
   <script language="javascript">
        function desaparece(id) {
            var campo = document.getElementById(id);
            campo.value= "";                           
        }
    </script>
Espero que te sirva!!

Un saludo,
Patricia
  #4 (permalink)  
Antiguo 18/08/2011, 05:37
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: problema con llamada a función JavaScript

Cita:
Iniciado por Patrida
La primera de ellas, para indicar el lenguaje a usar en el script, he utilizado el atributo "language" no "type".
Meeeeec, error. El atributo language es deprecated, hay que usar type.
Saludos.
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red
  #5 (permalink)  
Antiguo 18/08/2011, 06:05
 
Fecha de Ingreso: julio-2009
Mensajes: 8
Antigüedad: 14 años, 9 meses
Puntos: 1
Respuesta: problema con llamada a función JavaScript

Gracias por la info!! En realidad no soy ninguna experta en javascript.... Solo he hecho un par de projectos, pero usando type no me funcionaba y con language si. De ahi mi recomendacion....

Volvere a probar entonces!!

Un saludo,
Patricia
  #6 (permalink)  
Antiguo 18/08/2011, 06:08
 
Fecha de Ingreso: julio-2009
Mensajes: 8
Antigüedad: 14 años, 9 meses
Puntos: 1
Respuesta: problema con llamada a función JavaScript

Probe otra vez con el atributo type, pero entonces hay que usar "text/javascript", no solo "javascript".

Gracias por el aviso, nueva informacion archivada!!
  #7 (permalink)  
Antiguo 18/08/2011, 08:46
 
Fecha de Ingreso: agosto-2011
Mensajes: 14
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: problema con llamada a función JavaScript

Hola de nuevo. He probado varias cosas de las que me habeis comentado. He puesto lo del language y el type (más vale que sobre que no que falte XD) y además he cambiado en el form la llamada a la función indicando el vez del nombre directamente poniendo desaparece(this.id). Además, no sé porque extraña razón he tenido que quitar los ; que habia tras las instrucciones :S.

También he añadido una alerta en la función desaparece(id) que muestra el id que se la ha enviado y envia correctamente el id siendo txtNombre y txtPass respectivamente, pero no me deja la casilla en blanco, así que quiero pensar que el problema está en que...

var campo = document.getElementById(id)
campo.innerHTML = ""


...no es lo que hay que poner para que el campo se vacie.

PD: No uso el value porque quiero que inicialmente las casillas estén rellenas y se vacien según se pulsa o hace focus (luego añadiré el focus XD) en ellas para poder rellenarlas.

El código me ha quedado de la siguiente manera:

Código Javascript:
Ver original
  1. <script  language="javascript" type="text/javascript">
  2.             <!--
  3.                 function desaparece(id)
  4.                     {
  5.                        var campo = document.getElementById(id)
  6.                        campo.innerHTML = ""    
  7.                         //alert("¡ENTRA!")
  8.                         alert(id)
  9.                     }
  10.             //-->
  11.             </SCRIPT>


Código HTML:
Ver original
  1. <form action='inicioSesion.php?formulario=&nomcampo=' method='POST' class='formulario'  style='margin: 0px 0px 0px 0px;'>
  2.  
  3. <input  type='text' name = 'nuevo_nombre' id='txtNombre'  onClick="desaparece(this.id)" value='Introduce nombre'>
  4.  
  5. <input  type='text' name = 'nuevo_pass' id='txtPass'  onClick="desaparece(this.id)" value='Introduce password'>
  6.  
  7. <table class="tablacalendario" align="center" cellspacing="3" cellpadding="1" border="0">  
  8.  
  9. <tr class="tit" colspan=7>     
  10. <td align="center">
  11.                        
  12. <input type="Submit" value="[ ENTRAR ]">
  13.  
  14. </td>  
  15. </tr>
  16. </form>

Gracias por la ayuda!.
  #8 (permalink)  
Antiguo 18/08/2011, 08:48
 
Fecha de Ingreso: agosto-2011
Mensajes: 14
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: problema con llamada a función JavaScript

vale.....tras pararme a leer bien lo que decias sobre el value me he dado cuenta de que luego Patrida usa campo.value en vez de como yo campo.innerHTML, así que lo he probado ya funciona!.

Gracias, muchas gracias a los dos :).

Etiquetas: html, llamada, php, formulario
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 16:20.