TransWikia.com

¿Por que evento focus se dispara 2 veces?

Stack Overflow en español Asked by Oscar Díaz on December 14, 2021

Tengo un INPUT, intento que al hacer focus sobre él la fecha actual se registre automáticamente. Al hacer focus mando un mensaje para preguntar si esta seguro de registrar la fecha actual (podría haber un error de dedo) y aquí esta mi problema, pues el mensaje se repite 2 veces y no entiendo por que. El mensaje lo muestro con el plugin JQUERYCONFIRM.

$('.fecha').on('focus',function() {

    var hoy = new Date();
    var dia = hoy.getDate();
    var mes = hoy.getMonth()+1;
    var año = hoy.getFullYear();

    if(dia<10) {dia='0'+dia;} 
    if(mes<10) {mes='0'+mes;}    

    hoy = año + '-' + mes + '-' + dia;

    //$(this).val(hoy);

    $.confirm({
        theme: 'material',
        title: 'Atencion',
        content: '¿Ingresar Fecha?',
        useBootstrap: false,
        boxWidth:'300px',
        buttons:{
            Adelante: function(){ ingresarFecha() },
            Cancelar: function(){}
        }
    });

});

One Answer

Si lo que quieres es asegurarte de que esa función se ejecute solo una vez cuando ocurra el evento usa unbind(), con tu código quedaría:

$('.fecha').unbind().on('focus',function() {

        var hoy = new Date();
        var dia = hoy.getDate();
        var mes = hoy.getMonth()+1;
        var año = hoy.getFullYear();

        if(dia<10) {dia='0'+dia;} 
        if(mes<10) {mes='0'+mes;}    

        hoy = año + '-' + mes + '-' + dia;

        //$(this).val(hoy);

        $.confirm({
            theme: 'material',
            title: 'Atencion',
            content: '¿Ingresar Fecha?',
            useBootstrap: false,
            boxWidth:'300px',
            buttons:{
                Adelante: function(){ ingresarFecha() },
                Cancelar: function(){}
            }
        });

    });

No obstante puedes usar en vez de unbind() la función off().

Espero que te sirva de ayuda

Answered by lromeraj on December 14, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP