javascript - 使用button_to时将JS参数传递给 Controller

标签 javascript ruby-on-rails ruby-on-rails-4 datepicker erb

也许没有表格就无法实现这一点,但我想知道。我通过按应用程序管理部分中的按钮来调用 download_pdf 方法。这是工作代码:

<%= button_to t('.download_pdf', :default => "Download PDF BTC Statement"), download_pdf_admin_user_path(@user), 
                                 :action  => :download_pdf, 
                                 :class   => "btn btn-success btn-xs" %>

现在,让我们承认我希望允许站点管理员选择开始日期和结束日期,以便将这些参数传递给controller#method,以便生成此日期范围的报告。我尝试了以下方法,但我不知道如何将这些(start_date/end_date)变量传递给 Controller ​​。这是不起作用的代码(请参阅 button_to 参数中的大写字母):

<input type="text" placeholder="start date" id="start_date" class='datepicker'>
<input type="text" placeholder="end date" id="end_date" class='datepicker'>

<script type="text/javascript">
  $(document).ready(function(){
    $('#start_date').datepicker();
    $('#end_date').datepicker();
    START_PLZ = $('#start_date').datepicker().val();
    END_PLZ = $('#end_date').datepicker().val();
  });
</script>

<%= button_to t('.download_pdf', :default => "Download PDF BTC Statement"), download_pdf_admin_user_path(@user), 
                                 :action  => :download_pdf, 
                                 :params  => { start_date: START_PLZ, end_date: END_PLZ },
                                 :class   => "btn btn-success btn-xs" %>

有什么方法可以使用这些 JS 变量并在按下按钮时将它们传递给我的generate_pdf 方法吗?否则我可能会使用表格。 任何意见表示赞赏。

最佳答案

Erb 是服务器端模板引擎,因此代码在服务器端执行,而 JS 代码在客户端执行,所以不幸的是没有直接的方法。 但是 我们可以做的是为日期创建另一个表单,并将远程选项设置为true(RAILS AJAX FORM),因此一旦提交,我们就可以将button_to加载到 View 中,现在我们将在参数中包含值。我想应该可以。

关于javascript - 使用button_to时将JS参数传递给 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40129132/

相关文章:

javascript - 使用通配符比较nodeJS对象

ruby-on-rails - 在 Rails 中将 URL 作为参数传递

ruby-on-rails - RubyonRails - 您必须在应用程序的配置中设置 config.secret_key_base

javascript - 如何在 React.js 中渲染作为字符串属性传递的 Html 标签

javascript - Internet Explorer 的 Fancybox Iframe 错误

ruby-on-rails - OAuth2::Error,invalid_request:redirect_uri 与应用程序配置不匹配

amazon-web-services - 通过Rails中的rake任务在Elastic Search中更快地建立索引

jquery - Rails 4 无效AuthenticityToken

javascript - 如何使用 bootstrap-4-react 在模态中添加条件?

mysql - Postgresql 错误 (heroku) - 在 mysql 上本地工作