2012-10-10 20 views
0

我正在用Ajax更新JQuery日期選擇器,並且每次都必須重新初始化日期選擇器,但日期自動設置爲當前日期而非所選日期。如何更改我的代碼以傳遞正確的日期?如何使用Rails將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)); 
+0

我真的不明白。這是你的JavaScript模板嗎?它不應該是一個.js.erb文件嗎?嵌入式紅寶石在哪裏? –

+0

是的,它是在遠程調用索引控制器操作時使用的js.erb文件。我試驗過的ruby是$('#datepicker3')。datepicker(「setDate」,new Date(<%=(params [:start_time] .to_datetime).year%>,<%=(params [ start_time] .to_datetime).month%>,<%=(params [:start_time] .to_datetime).day%>)); – Andy

回答

0

好的,你的問題似乎是將日期格式從字符串轉換爲ruby對象,然後轉換爲JavaScript對象。

嘗試做這樣的事情:

<% date = Time.strptime(params[:start_time], "%y-%m-%d").to_i * 1000 %> 
$('#datepicker3').datepicker("setDate", new Date(<%= date %>)); 
1

我認爲,如果你打電話.datepicker,前前設置輸入值,它會工作:

= f.text_field :some_date, :type => 'date', :value => @some_date 

,然後在你的JS:

$(":date").datepicker(); 
相關問題