Foros del Web » Programando para Internet » Javascript »

llamar a una funcion con un boton

Estas en el tema de llamar a una funcion con un boton en el foro de Javascript en Foros del Web. ALguien podria ayudarme por favor?. Sabrian por que no me ejecuta esta funcion cuando hago click al boton que la llama a esta funcion.gracias de ...
  #1 (permalink)  
Antiguo 16/01/2016, 13:30
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
llamar a una funcion con un boton

ALguien podria ayudarme por favor?.

Sabrian por que no me ejecuta esta funcion cuando hago click al boton que la llama a esta funcion.gracias de antemano.


Código Javascript:
Ver original
  1. document.getElementById("enviando").onclick = contador();
  2.  
  3.     var i = 0;
  4.  
  5.     function contador()
  6.    
  7.         {
  8.             i = i + 1;
  9.             var btn = document.getElementById("enviando");
  10.             btn.value = "Intento de Envíos del formulario " + i;
  11.  
  12.             document.getElementById("num_intentos").innerHTML = btn.value;
  13.         }


Código HTML:
Ver original
  1. <input type="button" id="enviando" value="Presiona Aqui" />
  2.  
  3.         <div id="num_intentos"></div>
  #2 (permalink)  
Antiguo 16/01/2016, 13:58
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: llamar a una funcion con un boton

Puede que la consola te diga que "enviado" es null??

Por otro lado la variable "i" siempre será 1
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #3 (permalink)  
Antiguo 16/01/2016, 14:00
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
Respuesta: llamar a una funcion con un boton

lo unico que pretendo es que la funcion se ejecute cuando hago cliclk en el boton. pero no funciona
  #4 (permalink)  
Antiguo 17/01/2016, 07:49
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 8 meses
Puntos: 578
Respuesta: llamar a una funcion con un boton

Más sencillo todavía; no puedes ejecutar la función cuando la asocias al evento:

Código Javascript:
Ver original
  1. document.getElementById("enviando").onclick = contador;
  #5 (permalink)  
Antiguo 17/01/2016, 22:15
 
Fecha de Ingreso: diciembre-2015
Mensajes: 67
Antigüedad: 8 años, 4 meses
Puntos: 2
Respuesta: llamar a una funcion con un boton

Mas simple:
Código HTML:
Ver original
  1. <input type="button" id="enviando" value="Presiona Aqui" onclick="contador()" />
  #6 (permalink)  
Antiguo 18/01/2016, 06:31
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
Respuesta: llamar a una funcion con un boton

Mas sencillamente todavía, la solución que funciona:

Decir que este condigo que he conseguido, por fin que funcione, hace que cuando hago click en el boton enviar de un formulario, me indica que se ha enviado dicho formulario,

una, dos , tres... n veces.

Y como digo lo hace bien. pero lo que necesito y no se como hacer, es que haga lo mismo mediante una cookie.

Código HTML:
Ver original
  1.  
  2. <input bla bla bla />
  3.  
  4. <input bla bla bla />
  5.  
  6. <input type="submit" name="enviar" id="enviar" value="Enviar" />
  7.  
  8. </form>
  9.  
  10.  
  11.  <div id="intentos"></div>


Código Javascript:
Ver original
  1. document.getElementById("enviar").onclick = contador;
  2.  
  3.  
  4.     var i = 0;
  5.  
  6.     function contador()
  7.    
  8.         {    
  9.             i = i + 1;
  10.            
  11.             var mensaje_num_intentos = document.getElementById("enviar");
  12.            
  13.             mensaje_num_intentos = "Intento de Envíos del formulario " + i;
  14.  
  15.             document.getElementById("intentos").innerHTML = mensaje_num_intentos;
  16.         }


Como digo tengo que hacerlo con una cookie, y lo unico que mi profesor me ha dado al explicarme el tema de cookies es esto:

Código Javascript:
Ver original
  1. function setCookie(name, value, expires, path, domain, secure) {
  2.   document.cookie = name + "=" + escape(value) +
  3.   ((expires == null) ? "" : "; expires=" + expires.toGMTString()) +
  4.   ((path == null) ? "" : "; path=" + path) +
  5.   ((domain == null) ? "" : "; domain=" + domain) +
  6.   ((secure == null) ? "" : "; secure");
  7. }
  8.  
  9.  
  10. document.cookie="username=John Doe; expires=Thu, 18 Dec 2016 12:00:00 UTC; path=/";
  11.  
  12. var x = document.cookie;


y con sinceridad no se como implementarlo para hacerlo, agradeceria cualquier ayuda, gracias de antemano.
  #7 (permalink)  
Antiguo 18/01/2016, 11:49
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
Respuesta: llamar a una funcion con un boton

Vale, creo que he conseguido casi entenderlo pero para variar no me funciona y no se por que se que fallo en una tonteria pero no doy con la solucion, una ayudita lo agradeceria mucho la verdad:

Creo que el fallo esta en que no llamo bien al script con el boton del formulario pero no se como arreglarlo la verdad.

Código HTML:
Ver original
  1.      
  2.     <input bla bla bla />
  3.      
  4.     <input bla bla bla />
  5.      
  6.     <input type="submit" name="enviar" id="enviar" value="Enviar" />
  7.      
  8.     </form>
  9.      
  10.      
  11.      <div id="intentos"></div>


Código Javascript:
Ver original
  1. document.getElementById("enviar").onclick = setCookie;
  2.  
  3.  
  4.             function setCookie(nombre, valor, expiracion, ruta, dominio, seguridad)
  5.  
  6.                 {
  7.                     //DATOS DE LA COOKIE......................................................
  8.                     var datosCookie = nombre + "=" + valor +
  9.                     ((expiracion) ? "; expiracion=" + expiracion.toGMTString() : "") +
  10.                     ((ruta) ? "; ruta (path)=" + ruta : "") +
  11.                     ((dominio) ? "; dominio" + dominio : "") +
  12.                     ((seguridad) ? "; seguridad" : "");
  13.  
  14.  
  15.                     document.cookie = datosCookie;
  16.                 }
  17.  
  18.  
  19.  
  20.             function getCookie(nombre){
  21.                
  22.                     var indice = nombre + "=";
  23.                    
  24.                     //Conseguimos el indice de (indice)
  25.                     var indiceInicioCookie = document.cookie.indexOf(indice);
  26.                    
  27.                    
  28.                     if (indiceInicioCookie == -1)
  29.                    
  30.                         {
  31.                             return null;
  32.                         }
  33.                    
  34.                    
  35.                    
  36.                     var indiceFinalCookie = document.cookie.indexOf(";", indiceInicioCookie + indice.length);
  37.                    
  38.                     if (indiceFinalCookie == -1)
  39.                    
  40.                         {
  41.                             indiceFinalCookie = document.cookie.length;
  42.                             return unescape(document.cookie.substring(indiceInicioCookie + indice.length, indiceFinalCookie));
  43.                         }
  44.                 }
  45.  
  46.  
  47.  
  48.             var visitas = getCookie("contador")
  49.            
  50.             if (!visitas)
  51.            
  52.                 {
  53.                     visitas = 1;
  54.                 }
  55.                
  56.                 else
  57.            
  58.                 {
  59.                     visitas = parseInt(visitas) + 1;
  60.                     setCookie("contador", visitas);
  61.                    
  62.                     mensaje_num_intentos = "Esta es tu visita numero: " + visitas;
  63.                    
  64.                     document.getElementById("intentos").innerHTML = mensaje_num_intentos;
  65.                 }
  #8 (permalink)  
Antiguo 18/01/2016, 17:13
 
Fecha de Ingreso: enero-2016
Mensajes: 63
Antigüedad: 8 años, 3 meses
Puntos: 0
Respuesta: llamar a una funcion con un boton

a mi me funciona haci:

codigo javascript:
document.getElementById("enviando").addEventListen er ("click",contador,false)
var intentos=document.getElementById("num_intentos")

var i = 0;

function contador()

{
i = i + 1;
var btn = document.getElementById("enviando");
btn.value = "Intento de Envios del formulario ";

document.getElementById("num_intentos").innerHTML = i;
}


codigo html:
<input type="button" id="enviando" value="Presiona Aqui" />

<div id="num_intentos"></div>
  #9 (permalink)  
Antiguo 19/01/2016, 05:22
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
Respuesta: llamar a una funcion con un boton

adrison, ese codigo ya se que funciona. me referia al codigo haciendolo mediante cookies.

En cualquier caso ya he conseguido que funcione el contador usando cookies (que es lo que pretendia).

El codigo lo pongo para compartirlo con la comunidad (humildemente pienso que esta bien, aunque todo es mejorable en esta vida).

Solo una pequeña ayuda pediria para el codigo que les voy a poner;

¿Como puedo hacer que funcione este codigo, poniendolo entre las etiquetas <head>, por que solo me funciona poniendolo al final del documento, osea despues del formulario y necesito colocarlo antes del formulario, gracias?

Código Javascript:
Ver original
  1. document.getElementById("enviar").onclick = creacionFechaCookie;
  2.  
  3.  
  4.     //DATOS DE LA COOKIE..............................................................
  5.  
  6.         function setCookie(nombre, valor, expiracion, ruta, dominio, seguridad)
  7.  
  8.             {
  9.                 var datosCookie = nombre + "=" + valor +
  10.                 ((expiracion) ? "; expiracion=" + expiracion.toGMTString() : "") +
  11.                 ((ruta) ? "; ruta (path)=" + ruta : "") +
  12.                 ((dominio) ? "; dominio" + dominio : "") +
  13.                 ((seguridad) ? "; seguridad" : "");
  14.  
  15.  
  16.                 document.cookie = datosCookie;
  17.             }
  18.  
  19.  
  20.  
  21.     //INDICE DE LA COOKIE..............................................................
  22.  
  23.         function getCookie(nombre){
  24.  
  25.                 var indice = nombre + "=";
  26.  
  27.                 //Conseguimos el indice de (indice)
  28.                 var indiceInicioCookie = document.cookie.indexOf(indice);
  29.  
  30.  
  31.                 if (indiceInicioCookie == -1)
  32.  
  33.                     {
  34.                         return null;
  35.                     }
  36.  
  37.  
  38.  
  39.                 var indiceFinalCookie = document.cookie.indexOf(";", indiceInicioCookie + indice.length);
  40.  
  41.                 if (indiceFinalCookie == -1)
  42.  
  43.                     {
  44.                         indiceFinalCookie = document.cookie.length;
  45.                     }
  46.  
  47.                         return unescape(document.cookie.substring(indiceInicioCookie + indice.length, indiceFinalCookie));
  48.             }
  49.  
  50.  
  51.  
  52.     //CREACIÓN DE LA COOKIE..............................................................
  53.  
  54.         function creacionFechaCookie(fecha)
  55.  
  56.             {
  57.                 var base = new Date(0);
  58.                 var skew = base.getTime();
  59.  
  60.  
  61.                 if (skew > 0)
  62.  
  63.                     {
  64.                         fecha.setTime(fecha.getTime() - skew);
  65.                     }
  66.             }
  67.  
  68.  
  69.         var fecha = new Date();
  70.  
  71.         creacionFechaCookie(fecha);
  72.  
  73.         fecha.setTime(fecha.getTime() + 365 * 24 * 60 * 60 * 1000);
  74.  
  75.  
  76.  
  77.  
  78.     //BORRADO DE LA COOKIE..............................................................
  79.  
  80.         function borradoCookie(nombre, ruta, dominio)
  81.  
  82.             {
  83.                 if (getCookie(nombre))
  84.  
  85.                     {
  86.                         document.cookie = nombre + "=" +
  87.                         ((ruta) ? "; ruta=" + ruta : "") +
  88.                         ((dominio) ? "; dominio=" + dominio : "") +
  89.                         "; expiracion=Thu, 01-Jan-70 00:00:01 GMT";
  90.                     }
  91.             }
  92.  
  93.  
  94.  
  95.     //CONTADOR CON COOKIE..............................................................
  96.  
  97.         var visitas = getCookie("contador")
  98.  
  99.         if (!visitas)
  100.  
  101.             {
  102.                 visitas = 1;
  103.             }
  104.  
  105.             else
  106.  
  107.             {
  108.                 visitas = parseInt(visitas) + 1;
  109.             }
  110.  
  111.  
  112.         setCookie("contador", visitas, fecha);
  113.  
  114.         //document.write("Esta es tu visita numero: " + visitas);
  115.  
  116.         mensaje_num_intentos = "Esta es tu visita numero: " + visitas;
  117.  
  118.         document.getElementById("intentos").innerHTML = mensaje_num_intentos;

Última edición por mensajeescrito; 19/01/2016 a las 05:33

Etiquetas: boton, formulario, funcion, html, input
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 20:49.