我想显示一个下拉列表,将 id 从 value 参数发送到 Controller ,然后加载数据并重新加载页面。
想象一下这个。您是页面的管理员。您有所有用户的列表。现在您想查看特定用户的项目、帖子和评论。您有一个下拉菜单,选择用户和数据将加载他的项目、帖子和评论。现在您想查看其他用户的数据。和以前一样,您将在下拉列表中选择另一个用户,数据将重新加载,您将在同一页面上看到他们。
到目前为止,我知道如何制作下拉列表并获取 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 ?我应该如何将construction_id发送到 Controller 并确保id不为零然后加载数据?因为我认为页面的重新加载应该通过提交表单来完成。
最佳答案
如果您使用 jQuery,则应该使用 Jquery Ajax 来获取您想要的信息。从结果中您可以重新加载或打印新信息 http://api.jquery.com/jquery.ajax/
关于javascript - 从下拉列表中的值获取id,将其发送到 Controller ,加载数据并重新加载页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40433302/