【问题标题】:jQuery Datepicker can't set datejQuery Datepicker 无法设置日期
【发布时间】:2018-06-23 02:01:44
【问题描述】:

我在日期选择器中设置日期有问题。 我从其他输入字段获取日期并尝试在 new Date() 中使用,但它不起作用。该字段工作正常,我可以从项目其他空间的输入中获取日期,但在这里它不起作用:

$(function () {
    $('#empBirthDate').datepicker({
        format: 'dd-mm-yyyy',
        language: 'pl'
    }).datepicker("setDate",new Date());
    var birth = $('#birthID' + empEvidenceNumber).text();
    var day = parseInt(birth.substr(0, 2));
    var month = parseInt(birth.substr(3, 5));
    var year = parseInt(birth.substr(6, 10));
    $('#empBirthDate').datepicker().datepicker("setDate",new Date(year,month,day));
});

但我这样做:

$(function () {
    $('#empBirthDate').datepicker({
        format: 'dd-mm-yyyy',
        language: 'pl'
    }).datepicker("setDate",new Date());
    $('#empBirthDate').datepicker().datepicker("setDate",new Date(2000,11,22));
});

然后一切正常,所以我认为问题出在我的变量上,但我完全不知道是什么?我尝试了简单的变量,例如

var birth = '22-11-2000';

在 Date 中使用它作为字符串参数,这也有效。

我检查了很多次和我的变量:

var birth = $('#birthID' + empEvidenceNumber).text();

有效,我可以在我想要的地方显示它,但不能在 datepicker 中显示。我总是在日期选择器中检查当前日期。 有人可以解释我做错了什么,我该如何解决这个问题?

【问题讨论】:

    标签: jquery twitter-bootstrap datepicker


    【解决方案1】:

    它给你的日期是什么?你能显示更多的html吗?
    试试:

    $('#empBirthDate').datepicker().datepicker("setDate",new Date(year,month-1,day));
    

    【讨论】:

    • 我试过了,但还是一无所获,我知道月份从 0 到 11 开始索引。如果我使用 #empBirthDate 在其他输入字段中设置值,它总是格式正确的日期,例如“14-01-2018”
    • 日期设置是什么?它在显示什么,你想表达什么?
    【解决方案2】:

    您的 substr() 不以收集方式使用。见下文。

        var day = parseInt(birth.substr(0, 2));
        var month = parseInt(birth.substr(3, 2));
        var year = parseInt(birth.substr(6, 4));
    我不知道这是否有帮助?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-12
      • 1970-01-01
      • 1970-01-01
      • 2016-06-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多