簡體   English   中英

jQuery Datapicker Rails默認值

[英]jquery datapicker in rails default value

我需要在輸入的'date'值(如果存在)或Time.now(如果不存在)中提供默認值。

<div class="input-append date" id="datepicker" data-date="Time.now" data-date-     format="dd-mm-yyyy">
    <input size="16" type="text" value="" name="date">
    <input type="submit" style="display:none;" id="submit">
    <span class="add-on"><i class="icon-th"></i></span>
  </div>

我的js

$(document).ready(function() {
    $("#datepicker").change(function(){
        $("#submit").click();
    });
    $('#datepicker').datepicker();
});

有人可以幫忙嗎?

如果您的模型始終需要此date屬性的默認值,而不僅是在此js datepicker中,則建議更好的解決方案是重寫該屬性的getter方法。

假設您的屬性名為start_date ,並且您希望默認值為Time.now ,那么滿足以下條件即可:

class SomeModel
  def start_date
    read_attribute(:start_date) || Time.now
  end
end

當然,如果只想在特定控制器的視圖中為JS提供默認值,則還可以在將數據傳遞到視圖之前在控制器中設置默認值:

class SomeModelController < ApplicationController
  def show
    @some_model = SomeModel.find(params[:id])
    @some_model.start_date ||= Time.now
  end
end

但是,如果您真的只想為JS提供默認值,請在JS中嘗試以下操作:

$(document).ready(function() {
  $('#datepicker').datepicker("setDate": new Date());
});

一種執行此方法的方法是,為了不使初始化不浪費資產,您只需提供一個現成的值即可。 假設您從控制器發送或不發送@defaultdate變量:

<div class="input-append date" id="datepicker" data-date-format="dd-mm-yyyy">
    <input size="16" type="text" value="" name="date">
    <input type="submit" style="display:none;" id="submit">
    <span class="add-on"><i class="icon-th"></i></span>
</div>


<%
     date = @defaultdate || Time.now
     date = date.strftime('%Y,%m,%d')
%>


<script>
     var defaultDate = new Date(<%= date %>);
     $("#datepicker").val(defaultDate);
</script>

在我的控制器中,我有: scope :by_date,->(date){ select{|post| post.created_at.to_date == date} } scope :by_date,->(date){ select{|post| post.created_at.to_date == date} }我的課看起來像:

if signed_in?
      @post = current_user.posts.build
      if(params[:date].blank?)
        @feed_items = current_user.feed.by_date(Time.now.to_date)
      else
        @feed_items = current_user.feed.by_date(params[:date].to_date)
       end
    end

我不知道如何使其完美。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM