我有一個帶有多選下拉菜單的表單<form role="form" method="post" action="{{route('dev-admin.developer-contractor-associations.add.post')}}" autocomplete="off"> <div class="col-12"> @csrf <div class="form-group {{ $errors->has('defect-type-id') ? ' has-danger' : '' }}"> <select class="selectpicker {{ $errors->has('defect-type-id') ? 'is-invalid' : '' }}" name="defect-type-id" id="defect-type-id" multiple data-style="selectpicker-style" data-width="100%" title="Defect Types"> @foreach(App\DefectType::select('id','title')->get() as $defect_type) <option value="{{$defect_type->id}}">{{$defect_type->title}}</option> @endforeach </select> @if ($errors->has('defect-type-id')) <span class="invalid-feedback" role="alert"> <strong>{{ $errors->first('defect-type-id') }}</strong> </span> @endif </div> </div> <div class="col-12"> <div class="text-center"> <button onclick="return confirm('Are you sure to associate this contractor?')" type="submit" class="btn btn-primary my-4">Associate</button> </div> </div></form>當我想獲取控制器中的值時,我只收到 1 個選定值而不是選定選項列表:public function postAddDeveloperContractorAssociation(Request $request ) { $defect_type_id = $request->input('defect-type-id'); dd($defect_type_id); return redirect()->route('dev-admin.developer-contractor-associations.index')->withStatus(__('Contractor has been added.'));}當我dd這一切時,我得到的是類似的東西"2"而不是類似的[1, 2, 3]東西
1 回答

慕村225694
TA貢獻1880條經驗 獲得超4個贊
您必須在選擇輸入名稱后添加一對空括號。
<select class="selectpicker {{ $errors->has('defect-type-id') ? 'is-invalid' : '' }}" name="defect-type-id[]" id="defect-type-id" multiple data-style="selectpicker-style" data-width="100%" title="Defect Types">
@foreach(App\DefectType::select('id','title')->get() as $defect_type)
<option value="{{$defect_type->id}}">{{$defect_type->title}}</option>
@endforeach
</select>
請注意,name="defect-type-id[]"而只是name="defect-type-id"
- 1 回答
- 0 關注
- 234 瀏覽
添加回答
舉報
0/150
提交
取消