我有一个看似直接的问题,我希望能够将link_to上的参数更改为用户选择的内容。我的应用程序不需要登录,因此在登录时设置用户首选项的常用方法不合适。用户从select_tag中选择一个选项,如此(我正在使用Haml);
= select_tag('bible_version', options_for_select(['NIV','ESV', 'MSG'], :selected => @bible_version))
这是我的索引视图的一部分,其中包含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,但我不能让我的大脑围绕一个干净的方式来做到这一点。在此先感谢您的帮助!
答案 0 :(得分:0)
我没有测试下面的代码,但似乎它可以在你的加载功能。
$("#bible_version").change(function(){
$(your_links).attr("href") = $(this).val();
});