Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Ajax要求日期差异_Ruby On Rails - Fatal编程技术网

Ruby on rails Ajax要求日期差异

Ruby on rails Ajax要求日期差异,ruby-on-rails,Ruby On Rails,在my_form.html.erb中,我有两个日期选择器:- <div class="field"> <!--%= f.label :leaveFrom %--> <div><%= f.text_field :leaveFrom, :id => 'datepicker4', :placeholder => "From Date"%></div> </div> <div class="

在my_form.html.erb中,我有两个日期选择器:-

<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>

'datepicker4',:占位符=>“自日期”%>
'datepicker5',:占位符=>“截止日期”%>

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

我认为最好的方法是使用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));
   }

在选择日期或提交表单之前调用此函数。

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

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

在选择日期时或提交表单之前调用此函数。

使用jQuery尝试此函数,假设
CalculatorController
具有
date\u diff
方法

$(function() {
 $('#datepicker5').live("change", function() {
    $.ajax({
        url: "/calculator/date_diff",
        type: "POST",
        data: {date1 : $("#datepicker4").val(), date2 : $("#datepicker5").val()}
        success: function(result) {
            alert(result);
        }
    });
 });
});

使用jQuery尝试使用
CalculatorController
具有
date\u diff
方法

$(function() {
 $('#datepicker5').live("change", function() {
    $.ajax({
        url: "/calculator/date_diff",
        type: "POST",
        data: {date1 : $("#datepicker4").val(), date2 : $("#datepicker5").val()}
        success: function(result) {
            alert(result);
        }
    });
 });
});

+1-永远不要要求服务器做客户端能够自己做的事情。+1-永远不要要求服务器做客户端能够自己做的事情。