按下按钮发送select_tag值

时间:2013-08-06 19:32:30

标签: ruby-on-rails ruby-on-rails-3

我的rails应用程序的一部分并不是真正的表单,但是当我点击按钮时,它需要将数据发送回我的控制器。

现在,我可以让它发挥作用:

= link_to "Action", action_path(@object, :selection => 4), :method => :put

但我想在select_tag添加到该页面,并让此link_to将该选择标记的当前值作为附加参数发回。

我将如何做到这一点?

修改

我没有使用表单的原因是我有一个下拉列表,但有多个link_to选项,每个选项都应该传递该下拉列表值。例如,“衬衫数量”的下拉菜单,然后是每个尺寸(S,M,L,XL)的按钮,称为“添加到购物车”,会自动将尺寸和所选数字发回服务器

1 个答案:

答案 0 :(得分:1)

使用jquery创建ajax请求。从视图中获取所有输入值(在您的情况下为select标记值)并将其作为参数包装在ajax请求中。确保在点击链接时调用ajax函数。

$('#action_link').click(function() {
    $.ajax({
      type: 'POST',
      url: 'my_url/process_request',
      data: { select_box_val: $("#select_box_id").val() },
      success:function(data){
      alert('ok')
      },
      error:function(){
        $('#ajax_response').html('<p class="error"><strong>Oops!</strong> Try that again in a few moments.</p>');
      }
    });
});