Jquery类别和子类别嵌套下拉列表

时间:2012-04-19 16:44:37

标签: jquery

我在Asp.Net MVC3中有2个下拉。

  1. Controller提供类别列表,我正在使用对控制器类别方法的Jquery Ajax调用,并在下拉列表中填充类别列表。

  2. Controller提供子类别列表,我正在使用Jquery Ajax调用控制器子类别方法,并在下拉列表中填充子类别列表。

  3. 如何使用jquery根据所选类别填充su7bcategories?任何帮助,将不胜感激。

    还建议我是否有其他备用选项来执行此任务。

2 个答案:

答案 0 :(得分:1)

将onchange事件与类别相关联,并将选定的类别索引发送到服务器。服务器方法应填写其他下拉列表中的子类别

答案 1 :(得分:0)

<table>
    <tr>
        <td>Category
        </td>
        <td>
            <select id="Category"></select>
        </td>
    </tr>
    <tr>
        <td>Subcategory
        </td>
        <td>
            <select id="SubCategory"></select>
        </td>
    </tr>
</table>

<script type="text/javascript">
    $(document).ready(function () {
        $.ajax({
            url: '/ControllerName/GetAllCategory', type: 'Get', dataType: 'json',
            success: function (data) {
                var categoryObj = $('#Category');
                categoryObj.empty();
                $.each(data, function (i, entity) {
                    categoryObj.append('<option value="' + entity.Id + '">' + entity.Name + '</option>');
                });
            }
        });

        $('#Category').change(function () {
            $('#SubCategory').empty();
            if ($(this).val() != null && $(this).val() != 0) {
                $.ajax({
                    url: '/ControllerName/GetAllSubCategory', type: 'Get', dataType: 'json',
                    data: { CategoryId: $(this).val() },
                    success: function (data) {
                        var subCategoryObj = $('#SubCategory');
                        //subCategoryObj.empty();
                        $.each(data, function (i, entity) {
                            subCategoryObj.append('<option value="' + entity.Id + '">' + entity.Name + '</option>');
                        });
                    }
                });
            }
        });
    });
</script>