这是create.blade.php 文件。在此也包含 css 和 js 文件..
Html代码和ajax代码查看文件
@extends('layouts.app')
@section('content')
<link rel="stylesheet" href="http://www.codermen.com/css/bootstrap.min.css">
<script src="http://www.codermen.com/js/jquery.js"></script>
<form enctype="multipart/form-data" method="post" action="{{route('post.store')}}" >
@csrf
<div class="form-group col-md-8">
Category<select name="category" id="category" class="form-control">
<option>select</option>
@foreach($categories as $category)
<option value="{{$category->id}}">{{$category->category}}</option>
@endforeach
</select>
</div>
<div class="form-group col-md-8">
Category<select name="subcategory" id="subcategory" class="form-control">
<option>select</option>
@foreach($subcategories as $subcategory)
<option value="{{$subcategory->id}}">{{$subcategory->subcategory}}</option>
@endforeach
</select>
</div>
</form>
@endsection
这是创建类别和子类别功能代码的控制器代码
public function create(Request $request){
$categories = Category::all();
$subcategories = DB::table('subcategories')
->where('category_id', $request->category_id)
->pluck('subcategory', 'id');
return view('post.create', compact('categories', 'subcategories'));
}
这是路线
Route::get('/post/create', 'PostController@create')->name('post.create');
Problem is if i select category still no show related to subcategory
jquery 附加代码看起来是正确的。我认为问题可能出在你的路由上。
你有
url:"{{url('create')}}?category_id="+categoryID,
作为通过 Laravel 方法调用的 GET 请求url()
。如果您使用它可能会有所帮助url()
在这里,您已经在 web.php 中设置了路由,它将使用完整的 url 路径:
url:"{{url('post/create/')}}"+categoryID,
这让 url() 函数添加参数。但是,如果它是 GET 请求(并将 $category_id 添加到控制器方法),它也可能有助于解释路由文件中的传入参数:
Route::get('post/create/{id}', 'PostController@create')
我可能会创建一个单独的函数来获取子类别 - 然后对该函数进行 ajax 调用并提取子类别。干净一点。
但我认为你的问题可能出在路由上,也许上面的一些内容会对你有所帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)