问题
我正在尝试根据使用 JS 的用户输入来生成事件。除了日期之外,它生成的一切都很好。我想要以下日期格式24/07/2013但是当用户选择小于或等于 12的日期时,它会将日期与月份交换。例如:如果用户选择了今天的日期,即01/07/2013它显示为07/01/2013。
我已经粘贴了下面的代码,任何帮助将非常感谢。
外部 JS 文件的链接
页面代码
jQuery(document).ready(function($) {
jQuery(function() {
var dates = jQuery( "#start, #until" ).datepicker({
//defaultDate: "+1w",
changeMonth: true,
changeYear: true,
numberOfMonths: 1,
dateFormat:"dd/mm/yy",
minDate:1,
onSelect: function( selectedDate ) {
var option = this.id == "start" ? "minDate" : "maxDate",
instance = jQuery( this ).data( "datepicker" ),
date = jQuery.datepicker.parseDate(
instance.settings.dateFormat ||
jQuery.datepicker._defaults.dateFormat,
selectedDate, instance.settings );
dates.not( this ).datepicker( "option", option, date );
}
});
});
function generate_recurrence () {
var pattern = {};
// gather pattern
['start', 'every', 'unit', 'end_condition', 'until', 'rfor', 'nth', 'occurrence_of', 'radioSelection', 'indefinate'].each(function(k) {
pattern[k] = $(k).value;
});
// gather selected days
pattern.days = $$('input.week_days').collect(function(d) {
if (d.checked) return d.value;
return null;
}).compact();
try {
var r = new Recurrence(pattern);
var dates = r.generate((this.value == '') ? undefined : this.value);
} catch (e) {
$('output').value = e.message;
return;
}
// $('output').value = "long:\n" + r.describe() + "\n\n";
$('frequency_summary').innerHTML = r.describe();
// compact description. next version.
$('kunal_frequency_sam').value =r.describe();
$('output').value = dates.collect(function(d) {
return d.toString('dd/MM/yyyy');
}).join("|");
}
document.observe('dom:loaded', function ( ) {
$('end_condition').observe('change', function () {
$$('#for_span, #until_span, #never_span').invoke('hide');
$(this.value + '_span').show();
});
$('unit').observe('change', function () {
$$('#week_span, #month_span').invoke('hide');
if (this.value == 'w') $('week_span').show();
if (this.value == 'm') $('month_span').show();
});
$('radioSelection').observe('change', function () {
$$('#weekdate, #weekday').invoke('hide');
if (this.value == 'weekdate') $('weekdate').show();
if (this.value == 'weekday') $('weekday').show();
});
$$('button').invoke('observe', 'click', generate_recurrence);
});