Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.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 将文本\字段\标记的值传递给Rails中的控制器_Ruby On Rails_Model View Controller - Fatal编程技术网

Ruby on rails 将文本\字段\标记的值传递给Rails中的控制器

Ruby on rails 将文本\字段\标记的值传递给Rails中的控制器,ruby-on-rails,model-view-controller,Ruby On Rails,Model View Controller,我有一个文本\字段\标记,我想将其值传递给控制器 <%= text_field_tag 'amount', 'Enter amount' %> 我已经有了一个link_to标记,它传递了其他参数,我还想把这个文本框的值传递给我的控制器动作 <%= link_to "Do it", do_it_path(id: some.id, detail: card.summary) %> 有谁能提出一些可以实现这一目标的方法吗?我希望避免使用表单,因为它只是一个字段,我希

我有一个文本\字段\标记,我想将其值传递给控制器

<%= text_field_tag 'amount', 'Enter amount' %>

我已经有了一个link_to标记,它传递了其他参数,我还想把这个文本框的值传递给我的控制器动作

<%= link_to "Do it", do_it_path(id: some.id, detail: card.summary) %>


有谁能提出一些可以实现这一目标的方法吗?我希望避免使用表单,因为它只是一个字段,我希望保持简单。

因为文本字段标记输入是在加载DOM之后进行的,所以您可能希望使用JavaScript将文本字段标记的值附加到链接单击事件。下面使用jQuery:

<%= text_field_tag "amount", "Enter amount", class: "amount_field" %>

<%= link_to "Do it", do_it_path(id: some.id, detail: card.summary), class: "do_it_link" %>

<script>
  $(".do_it_link").click(function() {
    $(this).attr("href", function() {
      return this.href + "&amount=" + $('.amount_field').val();
    });
  });
</script>

$(“.do\u it\u link”)。单击(函数(){
$(this.attr(“href”,function()){
返回this.href+“&amount=“+$('.amount_字段').val();
});
});
但是你真的应该使用一个表单。它更简单、更安全

<%= form_for @something do |f| %>
  <%= f.text_field :amount, placeholder: "Enter amount" %>
  <%= f.hidden_field :detail, value: card.summary %>
  <%= f.submit "Do it" %>
<% end %>


为什么不使用表单?表单是实际执行此操作的最简单方式!否则,我建议使用
onclick
处理程序、伪表单和不必要的Javascript。使用表单,您的最终用户将对此表示感谢。我感谢您的建议。但我是从Rails起步的,所以我想知道有没有其他方法可以做到这一点。否决票也很受欢迎。从这两种方法中学到了很多。尽管我一直在寻找一种javascript方式,但最终还是使用了form_标记。