Форматирование даты с помощью jquery datepicker

#javascript #jquery

#javascript #jquery

Вопрос:

Прошу прощения, если это действительно простой вопрос, но я использую следующий плагин jquery:http://jonathanleighton.com/projects/date-input

Я хочу изменить дату с ГГГГ-ММ-ДД на ДД / ММ / ГГГГ, используя его предложение в разделе настройки. Я попытался сделать следующее, которое, как я думал, сработает, но это полностью нарушает его:

 $.extend(DateInput.DEFAULT_OPTS, {
  stringToDate: function(string) {
    var matches;
    if (matches = string.match(/^(d{4,4})-(d{2,2})-(d{2,2})$/)) {
      return new Date(matches[1], matches[2] - 1, matches[3]);
    } else {
      return null;
    };
  },

dateToString: function(date) {
    var month = (date.getMonth()   1).toString();
    var dom = date.getDate().toString();
    if (month.length == 1) month = "0"   month;
    if (dom.length == 1) dom = "0"   dom;
    return date.dom   "/"   month   "/"   getFullYear();
  }
});
  

В следующей строке все идет не так:

 return date.dom   "/"   month   "/"   getFullYear();
  

Может ли кто-нибудь предложить, что я делаю неправильно?

Комментарии:

1. попробуйте поместить возвращаемое значение в переменную, а затем вернуть его

2. Вы получаете какие-либо сообщения об ошибках?

3. Что это делает? В чем ошибка?

Ответ №1:

Вам следует попробовать использовать jQuery UI datepicker. Очень просто форматировать дату

http://jqueryui.com/demos/datepicker/

Комментарии:

1. Спасибо, я думаю, что просто воспользуюсь этим, поскольку это будет намного проще, чем пытаться отлаживать этот код.

Ответ №2:

я не думаю, что вам нужна «дата» в date.dom:

попробуйте заменить это:

 return date.dom   "/"   month   "/"   getFullYear();
  

с помощью этого:

 return dom   "/"   month   "/"   getFullYear();