Получение объекта даты для работы в IE6 (с параметром YYYY-MM-DD)? - PullRequest
2 голосов
/ 09 июня 2010

Я только что получил IE6 для проекта, который скоро выходит в дикую природу, что означает, что пришло время вернуться и прочесать все CSS и JS. Однако, я зациклился на объекте даты:

$.validator.addMethod("dateRange", function() {
  var today = new Date();
  var event_date_raw = $('#event_date').val();
  var event_date_parts = event_date_raw.split("-");
  var event_date = new Date( event_date_parts[2]+","+event_date_parts[1]+","+event_date_parts[0] );
  if( event_date.getTime() >= today.getTime() )
   return true;
  return false;
 }, "Please specify a correct date:");

event_date.getTime() возвращает «NaN» в IE6, поэтому проверка не проходит. event_date_raw в формате ГГГГ-ММ-ДД, дата которого, похоже, не имеет значения в любом другом браузере ...

Мысли

1 Ответ

3 голосов
/ 09 июня 2010

Согласно MSDN вы также можете ввести значение даты в новый объект Date, используя числовые значения. Что произойдет, если вы попробуете

var event_date = new Date( event_date_parts[0], event_date_parts[1] - 1, event_date_parts[2] );

Обратите внимание, что вы должны передавать номер месяца как значение от 0 до 11. В примере я уменьшил ваш номер месяца, потому что я предполагал, что диапазон ввода находится в диапазоне от 1 до 12.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...