这是我希望做的。目前我有一个用户可以选择的特征下拉列表,并且搜索某个元素是否具有该特征。他从下拉菜单中选择一个特征并点击搜索按钮。现在我正在尝试列出这些特征的链接,以便用户可以立即点击某些特征。
我将使用|
分隔几个链接:
characteristic1_link | characteristic2_link | characteristic3_link
目前,我有下列搜索功能:
<%= form_for(@element, method: 'get', url: 'query') do |f| %>
<%= f.collection_select :characteristic_id, Characteristic.all, :id, :name, :include_blank => true %>
<%= f.submit "Search" %>
<% end %>
我试图通过我生成的链接来做到这一点:
<% @characteristics.each do |characteristic| %>
<%= link_to (characteristic.name), '#' %>
<% end %>
如何通过链接传递:characteristic_id
参数,并在用户点击链接时以某种方式触发f.submit
?
修改
这似乎有效:
<% @characteristics.each do |characteristic| %>
<%= link_to (characteristic.name), query_path(:element => {:characteristic_id => characteristic.id}) %>
<% end %>
关于这种方法的意见? :)
答案 0 :(得分:0)
如果我理解你的问题,例如点击和link_to-anchor选择与anchors标签同名的选项并提交表单,那么你可能想...
<%= link_to characteristic.name, '#', class: 'trigger_select' %>
让你的JS完成剩下的工作。 (未经测试。)
$('.trigger_select').click( function() {
var href = $(this).attr('href');
$('#select_field').val(href);
$('#form').submit();
});
希望我理解你。