У меня есть DatePicker , с которым я получаю и устанавливаю дату (которая затем сериализуется в JSON с использованием json2.js с использованием следующего кода:
$('#element').datepicker('getDate'); // returns 2012-03-19T00:00:00.000Z
$('#element').datepicker('setDate', value);
К сожалению, однако, это устанавливает значение даты в сборщике данных на 30/08/2017
в Firefox v11 (что пока неверно, я понятия не имею, откуда оно получает это значение) и NaN/NaN/NaN
в IE9.
Я попытался изменить вторую строку следующим образом:
$('#element').datepicker('setDate', new Date(value));
Это тогда работает в Firefox, но я все равно получаю тот же результат в IE9.
Затем я немного сошел с ума и начал пытаться использовать строковые манипуляции для записи и разбора дат в каком-то другом формате в надежде, что смогу надежно заставить работать простой сценарий записи / разбора, но в итоге это оказалось намного больше кода, чем я ожидал - в сочетании с тем фактом, что мне нужно принимать во внимание часовые пояса (в некоторых часовых поясах я мог бы получить что-то вроде 2012-03-18T23:00:00.000Z
для 2012-03-20, то есть компонент даты указывает на предыдущую дату ) моя уверенность в настоящее время несколько поколеблена, так как важно, чтобы это работало в часовых поясах и браузерах.
Есть ли надежный способ безопасного сохранения загрузки в JSON из JSON?
- Меня интересует только компонент даты, а не компонент времени
- Сам формат даты на самом деле не имеет значения, поскольку он однозначно идентифицирует дату (например, я хотел бы избежать 01.01.2012 из-за неоднозначности дат США и Великобритании). Было бы неплохо, если бы он был удобочитаемым для человека, но если бы это делало разницу между его работой и не было бы лучше, чтобы оно работало!