Как мне установить дату с Ajax, используя Rails?
Я обновляю средство выбора даты JQuery с помощью Ajax, и мне приходится каждый раз переинициализировать средство выбора даты, но дата автоматически устанавливается на текущую дату, а не на выбранную дату. Как я могу изменить свой код, чтобы передать правильную дату?
В настоящее время я пытаюсь использовать метод Rails, например (params[:start_time].to_datetime).month, для года / месяца / дня, но у меня продолжают появляться ошибки, когда я применяю его к новому Date()
index.js
$('#datepicker').datepicker(
{
dateFormat: 'yy-mm-dd',
onSelect: function(dateText) {
$.getScript(document.location.href + '&start_time=' + dateText, function(data) {
});
}
});
$('#datepicker3').datepicker("setDate", new Date(2008,9,03) );
2 ответа
Хорошо, похоже, ваша проблема заключается в преобразовании форматов даты из строки в объект ruby, а затем в объект javascript.
Попробуйте сделать что-то вроде этого:
<% date = Time.strptime(params[:start_time], "%y-%m-%d").to_i * 1000 %>
$('#datepicker3').datepicker("setDate", new Date(<%= date %>) );
Я думаю, что это будет работать, если вы установите входное значение перед вызовом.datepicker, например:
= f.text_field :some_date, :type => 'date', :value => @some_date
а затем в вашем JS:
$(":date").datepicker();