我有一个简单的应用程序,我允许用户创建帖子。要创建帖子,用户需要选择一个类别。我想使用集合选择来显示类别。当用户选择一个类别时,我需要在其下方显示另一个选择集合,其中列出了该类别中的子类别。所有这些都发生在帖子/新页面中。
我尝试使用jQuery和AJAX实现这一点,我只能找到第一个集合中的类别ID,通过显示一个显示该id的alert()框来确认。但我不知道如何使用该id向服务器进行AJAX POST,检索子类别,然后显示第二个集合选择。
我在网上找到的所有例子都不适用于我。任何人都可以为我提供完整的工作代码,可以满足我的要求吗?感谢。
答案 0 :(得分:3)
首先,编写一个控制器动作,接受一个类别ID作为参数,并以下面的格式以纯文本形式呈现它的子类别:
<option value="1">First subcategory</option>
<option value="2">Second subcategory</option>
<option value="3">Third subcategory</option>
接下来,编写一个AJAX请求,该请求在类别下拉列表更改时触发:
$('#category_dropdown').change(function() {
var subcategory_url = "/get_subcategories?category_id=" + $(this).val();
var subcategory_select = $(this).next('select');
$.ajax({
url: subcategory_url,
success: function(data) {
subcategory_select.html("<option selected=selected>Select Subcategory</option>" + data);
}
});
});