jquery datePicker没有焦点事件?

时间:2011-11-02 12:41:14

标签: javascript jquery jquery-ui-datepicker

我有下一个代码:

$("#fecha_fin, #bf_fin").click(function(){
    if( $("#fecha_inicio").val() == "" ){
        crearModal( "Alerta", 
                    getMessage("/js/buscador/buscadores.js", "11", codidi, 'Por favor, seleccione la fecha de inicio del hotel.'));

        $("#fecha_fin").val("");
    }else if(($("#fecha_fin").val() == "") || (this.id == "bf_fin")){
        var diasASumar = dif_dias("hoy", "fecha_inicio") + 1;
        $("#fecha_fin").datepicker("option", "defaultDate", +diasASumar);
        $("#fecha_fin").datepicker("show");
    }
});

$("#fecha_fin").focus(function(){
    if( $("#fecha_inicio").val() == "" ){
        crearModal( "Alerta", 
                    getMessage("/js/buscador/buscadores.js", "11", codidi, 'Por favor, seleccione la fecha de inicio del hotel.'));

        $("#fecha_fin").val("");
    }else if(($("#fecha_fin").val() == "") || (this.id == "bf_fin")){
        var diasASumar = dif_dias("hoy", "fecha_inicio") + 1;
        $("#fecha_fin").datepicker("option", "defaultDate", +diasASumar);
        $("#fecha_fin").datepicker("show");
    }
});

事实是,当焦点事件发生时,而不是单击一个,生成defaultDate的行不起作用。没有错误,只是它没有做它应该做的事情。但是当事件是点击时,它就完美了。

有人可以给出指示吗?

2 个答案:

答案 0 :(得分:1)

最干净的代码如下:

$("#fecha_fin, #bf_fin").click(function(){
        var diasASumar = dif_dias("hoy", "fecha_inicio") + 1;
        $("#fecha_fin").datepicker("option", "defaultDate", +diasASumar);
        $("#fecha_fin").datepicker("show");
    }
});

$("#fecha_fin").focus(function(){
        var diasASumar = dif_dias("hoy", "fecha_inicio") + 1;
        $("#fecha_fin").datepicker("option", "defaultDate", +diasASumar);
        $("#fecha_fin").datepicker("show");
    }
});

答案 1 :(得分:0)

您的变量+前面有diasASumar个符号。这不是必需的。