jalali日历用于dateTimepicker jquery ui插件

时间:2016-04-23 08:59:06

标签: javascript jquery jquery-ui datepicker calendar

我正在为datepicker小部件jquery ui使用dateTimepicker插件。

现在我想添加jalali Calendar支持。

当然会编写一个替换和自定义版本的datepicker jquery ui,您可以在jalali date picker看到。

效果很好但是当我使用 datetimepicker jalali日期选择器时,会出现问题。

如果你知道,在jalali日历和格里高利历中,日月长度有些差异。例如,Gregorian的 2月月(第2个月)有28天,而 Ordibehesh (jalali的第2个月)有31天。

将jalali datepicker和datetimepicker连接到页面并调用dateTimepicker插件提供的 datetimepicker 时,显示的日期是正确的但是点击(选择)日期(jalali的第2个月),例如Thirtieth一天,第三个jalali月的第二天(名为khordad)被退回,为什么?因为二月有28个月。

这是我所描述的一个小说:



$(document).ready(function () {
			$(".datePicker").each(function () {
				$(this).datetimepicker({
					dateFormat: 'dd MM yy',
					altFieldTimeOnly: false,
					timeFormat: "HH:mm",
					altFormat: 'dd/mm/yy',
					separator: " ",
					altSeparator: " ",
					altField: $(this).next('.hiddenField'),
					stepMinute: 5
					
				});
			});

});

<link href="https://code.jquery.com/ui/1.12.0-rc.2/themes/smoothness/jquery-ui.css" rel="stylesheet"/>
<link href="https://cdnjs.cloudflare.com/ajax/libs/jquery-ui-timepicker-addon/1.6.1/jquery-ui-timepicker-addon.min.css" rel="stylesheet"/>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://code.jquery.com/jquery-migrate-1.4.0.min.js"></script>
<script src="https://code.jquery.com/ui/1.10.4/jquery-ui.min.js"></script>



<script src="https://dl.dropboxusercontent.com/u/24987834/calendar.js"></script>

<script src="https://dl.dropboxusercontent.com/u/24987834/jquery.ui.datepicker-cc.js"></script>

<script src="https://dl.dropboxusercontent.com/u/24987834/jquery.ui.datepicker-cc-fa.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-ui-timepicker-addon/1.6.1/jquery-ui-timepicker-addon.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-ui-timepicker-addon/1.6.1/i18n/jquery-ui-timepicker-fa.js"></script>



<input id="start_date_picker" class="datePicker form-control from" targetTo="#end_date_picker" name="start_date_picker" type="text" style="direction:rtl">

<input class="hiddenField" name="start_date" type="hidden">
&#13;
&#13;
&#13;

我认为附加到datetimepicker的点击事件在这里有问题。

1 个答案:

答案 0 :(得分:2)

经过数小时的搜索和检查 jquery-ui-timepicker-addon.js Jalali datepicker jquery ui 我发现只需将所有new Date()替换为{ {1}}(预计第262行),解决问题。