首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel获得多个选择的下拉值到控制器

Laravel获得多个选择的下拉值到控制器
EN

Stack Overflow用户
提问于 2019-09-06 03:11:40
回答 1查看 335关注 0票数 3

我有一个具有多选择下拉列表的表单

代码语言:javascript
复制
<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>

当我想获得控制器中的值时,我只接收一个选定的值,而不是一个所选选项的列表:

代码语言:javascript
复制
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]之类的东西

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-06 03:32:40

您必须在select输入名称之后添加一个空括号。

代码语言:javascript
复制
<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"

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57815222

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档