dropdownlist日期/星期
问题描述:
嗨,我是红宝石轨道上的新手......我在我的下拉列表中遇到问题..必须显示比本周前进3周..例如第39周..它应该是wekk。 42但本周应自动选择...第39周..这是我的代码..dropdownlist日期/星期
<%= select_tag("stock_movement", options_for_select(StockMovement.order("year DESC, week DESC").limit(20).map { | val | [ "#{ val.year }/#{ val.week }", val.id] }, :selected => @stock_movement)) %>
在此先感谢。
答
尝试这样的事:
<% cweek = Date.today.cweek
sms =StockMovement.where(week: (cweek..cweek+3)).order("year DESC, week DESC")
sms_now = sms.last.id
%>
<%= select_tag("stock_movement", options_for_select(sms.map { | val | [ "#{ val.year }/#{ val.week }", val.id] }, :selected => sms_now)) %>
- ,然后考虑的选项初始化移动到控制器。
如果用它拨弄多一点,这里的使用form.select助手和预选中的藏品如果存在(在我的情况研讨会)的参考,目前周,否则价值的另一个解决方案。
<% cweek = Date.today.cweek
sms =StockMovement.where(week: (cweek..cweek+3)).order("year DESC, week DESC")
sms_selected = @seminar.stock_movement ? @seminar.stock_movement.id : StockMovement.where(week: cweek).first.id
%>
<%= f.select("stock_movement_id", sms.map { | val | [ "#{ val.year }/#{ val.week }", val.id] },{:selected => sms_selected}) %>
答
我用JQuery来解决这个问题。 Datepicker插件可以满足您的所有需求。