2013-10-11 72 views
0

如何通过控制器功能中的链接传递值。
我想通过链接下面的rc值,以便路由收集它并发送到controller.I新rails在rails.Anyone请帮我解决这个问题。如何在控制器功能中通过链接传递值

我的html.erb。它通过jQuery函数从文本框中收集值。匹配的链接,并发送

 <script type="text/javascript"> 
     var rc=jQuery("#commonid").val(); 
     </script> 

     <div ><%=link_to "Alert By Region",alerts/filter_alert %></div> 

我的routes.rb

文件到控制器

match 'alerts/filter_alert', :controller => 'alerts', :action => 'filter_alert' 

我控制器

  def filter_alert(x) 
      @message=x 
      @title = @title + ' - Alerts' 
      render :site_alerts 
      end 

回答

1

的Javascript的东西都是属于为Javascript 。您需要在访客点击此链接时动态调整此值。

在Rails的控制器方面,你不能硬编码该方法。您需要使用查询字符串中的参数,因为您不知道输入是什么。

# Views 
link_to 'Alert By Region', 'alerts/filter_alert', id: 'alert-link' 

# Javascript 
$('#alert-link').on('click', function() { 
    var rc = $("#commonid").val(); 
    if rc { 
    this.attr['href'] += '?rc='+ encodeURI(rc); 
    return true; 
    } else { 
    alert 'input is blank!'; 
    return false; 
    } 
}); 

# Controller 
def filter_alert 
    rc = params[:rc] 
    # Then process based on this 
end 
相关问题