由於jQuery的日期選擇器(使用$datePicker.calendarsPicker
)與MM/dd/yyyy
格式
()datePicker.calendarsPicker問題與Chrome版本56.0.2924.87
與Chrome版本56.0.2924.87的問題,它不填充日期。我添加了"yyyy-MM-dd"
格式正在工作。
現在我遇到的問題是,如果我在我的視圖上使用"yyyy-MM-dd"
,那麼出於某種原因,日期選擇器將與2022年8月的記錄一起提供。我不知道如何以及爲什麼?在控制檯中,我可以看到最小和最大日期的預期結果,但不知何故,UI會提供不同的數據。
這是關於$datePicker.calendarsPicker
還是別的什麼?這裏使用了jQuery 1.8.7
。
查看:
@Html.LabelFor(schedule => schedule.DateString, "Date", new { @for = "requested-fulfillment-date" })
@Html.TextBoxFor(schedule => schedule.DateString, new { id="requested-fulfillment-date", type = "date", @class = "date-picker", min = Model.MinOrderDate.ToString("yyyy-MM-dd"), max = Model.MaxOrderDate.ToString("yyyy-MM-dd"), @readonly="readonly" })
控制檯結果:
<label for="requested-fulfillment-date">Date</label>
<input class="date-picker hasCalendarsPicker" id="requested-fulfillment-date" max="2017-03-12" min="2017-02-10" name="ScheduleModel.DateString" readonly="readonly" type="text" value="2017-02-10">
UI結果:
我嘗試以下方法,但他們沒有工作:
方法1:
this.setDatePickerWidget = function(event, data) {
var $datePicker = $("#requested-fulfillment-date", data.element);
var min = $datePicker.attr("min");
var max = $datePicker.attr("max");
var date = $datePicker.val();
$datePicker.calendarsPicker({
showTrigger: '.trigger',
showAnim: 'fadeIn',
minDate: min,
maxDate: max,
defaultDate: date,
**dateFormat: 'yyyy-MM-dd',**
onSelect: function() {
$.publish('order_date_changed', { date: $("#requested-fulfillment-date").val() });
$("#checkout").prop('disabled', true);
}
}).prop('type', 'text');
};
阿布羅奇-2:
this.setDatePickerWidget = function(event, data) {
var $datePicker = $("#requested-fulfillment-date", data.element);
var min = $datePicker.attr("min");
var max = $datePicker.attr("max");
var date = $datePicker.val();
$datePicker.calendarsPicker({
showTrigger: '.trigger',
showAnim: 'fadeIn',
minDate: min,
maxDate: max,
defaultDate: date,
onSelect: function() {
$.publish('order_date_changed', { date: $("#requested-fulfillment-date").datepicker({ dateFormat: 'yyyy-MM-dd'}).val() });
$("#checkout").prop('disabled', true);
}
}).prop('type', 'text');
};
注: 如果我改變我的查看以下日期選取器開始工作。唯一的問題是,當我選擇不同的日期時,它顯示爲MM/dd/yyyy
格式,但在一兩秒鐘後它恢復爲yyyy-MM-dd
。
@Html.TextBoxFor(schedule => schedule.DateString, new { id = "requested-fulfillment-date", type = "date", @class = "date-picker", min = Model.MinOrderDate.ToString("MM/dd/yyyy"), max = Model.MaxOrderDate.ToString("MM/dd/yyyy"), @readonly = "readonly" })
'變量$日期選擇= $( 「#請求履行日期」,data.element);'的'data.element'在這裏不需要,因爲一個id必須是文檔唯一的... –
我在[jQuery UI網站](http://api.jqueryui.com)上找不到對'calendarsPicker'的任何引用/?S = calendarsPicker)。你確定你沒有使用其他的部件庫嗎? –
@MikeMcCaughan http://keith-wood.name/datepick.html,使用這個庫。我從這個網站添加了最新版本,但仍遇到同樣的問題。讓我看看這個小部件的原因是什麼,如果我沒有找到任何有意義的東西,我會直接使用'$ datepicker'。 – CSharper