【问题标题】:How to use the result of select_tag to set link_to args如何使用 select_tag 的结果设置 link_to args
【发布时间】:2012-12-14 20:14:15
【问题描述】:

我有一个看似直截了当的问题,我希望能够将 link_to 上的参数更改为用户选择的内容。我的应用程序不需要登录,因此在登录时设置用户首选项的常用方法不合适。用户从 select_tag 中选择一个选项,就像这样(我正在使用 Haml);

 = select_tag('bible_version', options_for_select(['NIV','ESV', 'MSG'], :selected => @bible_version))

这是我的 index 视图的一部分,带有 link_to;

  - @verses.each do |verse|
    %tr
      %td= verse.gospel_verse
      %td= link_to 'Read', 'http://www.biblegateway.com/passage/?search=' + verse.gospel_verse + '&version=' + @bible_version

将@bible_version 变量更改为用户选择的值并重置所有链接的最佳方法是什么?我想我需要设置一个 cookie,并且不介意刷新页面或使用 Javascript,但我无法让我的大脑找到一种干净的方式来做到这一点。提前感谢您的帮助!

【问题讨论】:

    标签: ruby-on-rails


    【解决方案1】:

    我没有测试以下代码,但它似乎可以在您的加载功能中使用。

    $("#bible_version").change(function(){
       $(your_links).attr("href") = $(this).val();
    });
    

    【讨论】:

    • 感谢 Jeremiah,您的建议可能会奏效,但我认为使用 Ruby(我更擅长)解析控制器操作中的链接比使用 Javascript 更容易。
    猜你喜欢
    • 2013-01-05
    • 2010-11-05
    • 1970-01-01
    • 2020-02-02
    • 1970-01-01
    • 1970-01-01
    • 2016-01-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多