我想显示一个下拉列表,从value参数向控制器发送id,然后加载数据并重新加载页面。
想象一下。您是页面的管理员。您有所有用户的列表。现在您想要查看特定用户的项目和帖子以及评论。您有一个下拉列表,选择用户,数据将加载他的项目,帖子和评论。现在您想要查看其他用户的数据。和以前一样,您将在下拉列表中选择另一个用户,数据将重新加载,您将在同一页面上看到它们。
到目前为止,我知道如何制作一个下拉列表并获取jQuery代码的id:
<%= select_tag "construction_id", options_from_collection_for_select(@constructions, "id", "title"), :onchange => "constructions_dropdown(this.value)", class: "form-control", id: "dropdown_const" %>
HTML看起来像这样:
<select class="form-control" id="dropdown_const" name="construction_id" onchange="constructions_dropdown(this.value)">
<option value="25">My construction</option>
<option value="26">Another construction</option>
</select>
如果我选择另一种结构,我会得到这个ID:
function constructions_dropdown(construction_id) {
alert(construction_id)
}
但现在呢?我还在索引页面上。那么也许我应该制作一个form_tag?我应该如何将construct_id发送到控制器并确保id不是nil然后加载数据?因为我认为页面的重新加载应该通过提交表格来完成。
答案 0 :(得分:0)
如果您使用的是jQuery,则应使用Jquery Ajax来获取所需的信息。从结果中,您可以重新加载或打印新信息http://api.jquery.com/jquery.ajax/