Laravel 依赖的两个下拉菜单

问题描述

table1

这是我的 table1 和

table2

这是我的表 2,其中 table1.id = table2.catid

现在在产品条目视图中,我需要两个下拉列表选择。第二个依赖于第一个。当我从第一个下拉列表中选择名为鞋子的类别时,可用选项将是第二个下拉列表中的女性、男性、婴儿鞋选项。我怎样才能在 Laravel 5.7 中做到这一点?我需要ajax吗?谢谢

解决方法

  • 是的,您应该在类别选择选项的更改事件上需要 Ajax。

  • 在脚本标签中
    $(document).on("change",".cat_id",function () {

                 $.ajax({
                     type: "POST",url: "{{route('subcate.select')}}",data: {
                         '_token': $('input[name="_token"]').val(),'cat_id': $('.cat_id').val()
                     },success: function (data) {
                         console.log(data);
                         $(".subcat_id").html("");
                         console.log(data);
                         $(".subcat_id").html(data);
    
                     }
                 });
             });
    
  • 在控制器文件中

  • 公共函数选择(请求 $request){

    $subcategories= Subcategory::where('cat_id',$request->cat_id)->get();
    $html='<option value="">Select SubCategory</option>';
    foreach($subcategories as $subcategory){
        $html.="<option value='" . $subcategory->id . "'>" . $subcategory->name . "</option>";
    }
    echo $html;
    

    }