0

在我的 _form.html.erb 中,我有两个 DatePicker:-

<div class="field">
    <!--%= f.label :leaveFrom %-->
    <div><%= f.text_field :leaveFrom, :id => 'datepicker4', :placeholder => "From Date"%></div>
  </div>
  <div class="field">
    <!--%= f.label :leaveTo %-->
    <div><%= f.text_field :leaveTo, :id => 'datepicker5', :placeholder => "To Date" %></div>
  </div>

我的要求是计算这两个日期之间的日期差异,而不是在表单提交上。一旦我选择“To Date”,它就会显示天数。我无法实现 ajax 调用。任何人都可以提供一些解决方案来实现这一点。

4

2 回答 2

3

我认为最好的方法是使用 java 脚本而不是调用 ajax.var leaveFrom = 来显示差异

    function dayDiff(){
      var leavefrom = $('.datepicker4').datepicker('getDate');
      var leaveto = $('.datepicker5').datepicker('getDate');
      var dayDiff = Math.ceil((leavefrom - leaveto) / (1000 * 60 * 60 * 24));
   }

在选择日期或提交表单之前调用它。

于 2012-08-21T08:58:37.823 回答
1

假设CalculatorControllerdate_diff方法,使用 jQuery 试试这个

$(function() {
 $('#datepicker5').live("change", function() {
    $.ajax({
        url: "/calculator/date_diff",
        type: "POST",
        data: {date1 : $("#datepicker4").val(), date2 : $("#datepicker5").val()}
        success: function(result) {
            alert(result);
        }
    });
 });
});
于 2012-08-21T09:03:44.743 回答