我试图从date_select中获取所选日期:
<%= form_for(@newevent) do |f| %>
<%= f.date_select :day, { id: "date-select"} %>
<button id="check-button" type="button">Check</button>
<% end %>
使用JQuery / Javascript:
$(document).on('click', "#check-button", function(){
var selectedDate = $("#date-select").val();
alert(selectedDate);
var checkList = []; //creates array to store customer ids
$("#check-list li input").each(function(){ //for each listed colleague...
if( $(this).is(":checked")){ //if check-box is ticked
checkList.push($(this).val()); //add id to list
}
});
$.ajax({
url: '/events/check',
data: {checkList: checkList , selected_date: selectedDate },
method: "POST"
}
);
});
这里的参考是我的迁移文件中定义:day
的地方:
class CreateEvents < ActiveRecord::Migration
def change
create_table :events do |t|
t.timestamps
t.references :calendar, foreign_key: true
...
t.date :day
...
end
但是,在警告时,返回的值是&#34;未定义&#34;。为什么会这样?我希望它返回YYYY-MM-DD
形式的值。抱歉,如果这是显而易见的,但我是编程新手并且似乎无法自己解决这个问题
答案 0 :(得分:0)
Date_select,根据rails api“返回一组选择标记(一个用于年,月和日)”。你的javascript将不得不处理三个单独的选择并从中构建一个日期。查看生成的HTML以获取ID。