无法初始化Datepicker

时间:2013-08-08 07:05:28

标签: jquery

我有以下代码片段:

在我的JS文件中:

$.datepicker.setDefaults({
        dateFormat: 'dd.mm.yy'
    });

$("#performDateView").datepicker({
  minDate: "0",
  maxDate: "+3d",

});

var myDate = new Date(1978,2,11) 

$('#performDateView').datepicker( "setDate", myDate);

在我的HTML文件中:

<input type="text" id="performDateView" />

问题:maxDate和minDate工作,但setDate属性没有。我使用jQuery 1.9.1我应该怎么做才能解决这个问题?我还有一个链接:http://jsfiddle.net/RzD5Z/

5 个答案:

答案 0 :(得分:1)

两件事:

  • 输入类型应为text。您可以拥有浏览器自己的日期选择器或jQuery UI的日期选择器,但不能同时使用两者。
  • 您已将datepicker的最短日期设置为今天,并将最长日期设置为从今天起的三天。 1978年3月不符合该范围,因此未设定日期。

演示:http://jsfiddle.net/RzD5Z/2/

答案 1 :(得分:1)

将输入类型从日期更改为文本。

<input type="text" id="performDateView" />

&安培;如果你想设置日期然后删除minDate

minDate: "0",

演示:http://jsfiddle.net/RzD5Z/5/

答案 2 :(得分:0)

我认为你的type="date"搞乱了jquery UI提供的内置javascript功能。您可能需要查看有关如何解决问题的this问题。就这个bug而言,将你的html修改为:

  <input type="text" id="performDateView" />

修复了日期的默认设置。工作jsfiddle。希望这会有所帮助。

答案 3 :(得分:-1)

请参阅jQuery文档here

$(document).ready(function() {
  $('#datepicker').datepicker('setDate', new Date());
});

这应该按预期工作;盯紧了  <p>Date: <input type="text" id="datepicker" /></p>

所以这个

$('#performDateView').datepicker( "setDate", new Date(2011,08,04));

会奏效。

答案 4 :(得分:-2)

更改您的以下内容

<input type="date" id="performDateView" />

<input type="this" id="performDateView" />此行和

更改

$.datepicker.setDefaults({
    dateFormat: 'dd.mm.yy'
});

这部分与下面的

$.datepicker.setDefaults({
    dateFormat: 'dd-mm-yy'
});

我也在你的jsFiddle示例中应用了它。它在那里工作。