Jquery日期选择器的两种不同日期格式在同一个id上

时间:2016-04-04 14:28:33

标签: javascript jquery datepicker

我正在尝试在相同的id上获取Jquery日期选择器,这会在事件发生后更改其日期格式。我尝试了下面的代码片段,但无法按预期执行。

JS CODE

function dateselect(){
    var type = jQuery('#uploadtype').val()
    if(type == "monthly"){ //if user select month as dropdown
        jQuery('#datepicker').datepicker( {
            changeMonth: true,
            changeYear: true,
            showButtonPanel: true,
            dateFormat: 'MM yy',
            onClose: function(dateText, inst) { 
                $(this).datepicker('setDate', new Date(inst.selectedYear, inst.selectedMonth, 1));
            }
        });
    }

    else{
            jQuery('#datepicker').datepicker({
                  beforeShowDay: displayValidDates,
                  maxDate: '-1w',
                  constrainInput: true,
                dateFormat:"yy-mm-dd"
            });
         }
}

1 个答案:

答案 0 :(得分:1)

如果要根据条件在运行时更改格式,最好使用默认值初始化datepicker,并且您的函数只会更改所需的格式和其他选项。

...试

jQuery('#datepicker').datepicker({
              beforeShowDay: displayValidDates,
              maxDate: '-1w',
              constrainInput: true,
            dateFormat:"yy-mm-dd"
         });

function dateselect(){
var type = jQuery('#uploadtype').val()

if(type == "monthly"){ //if user select month as dropdown

    $("#datepicker").datepicker( "option", "dateFormat", "MM yy" );
}

else{
    $("#datepicker").datepicker( "option", "dateFormat", "yy-mm-dd" )
}

}

您可以查看此示例以获取更多信息:

https://jqueryui.com/resources/demos/datepicker/date-formats.html