0

我有工作日的下拉列表我想选择多天,比如“星期一”和“星期二”我有几个问题

  • 1)如何隐藏多选下拉菜单?因为它显示了所有列表
  • 2)如何多选呢?我应该按住 CTRL 进行多选吗?
  • 3)如果我将它作为字符串放在同一列中,它将如何保存在数据库中,我的意思是它会像'MondayTuesday','Monday Tuesday',还是'Monday,Tuesday'

这是我的看法

        <div class="form-group">
            {{Form::label('weekdays', 'Week Days')}}

            {{Form::select('weekdays',$weekdays,null,array('name'=>'weekdays[]', 'multiple' => 'multiple'))}}
            {{Form::select('timetable',$time,null,array('name'=>'time[]'))}}
        </div>

控制器

        $categories_name = Category::pluck('category_name','id');    
        $data = array(
            'weekdays' => [
                'Monday',
                'Tuesday',
                'Wednesday'
            ],
            'time' => [
                '2p.m',
                '3p.m'
            ],
            'categories_name' => $categories_name
        );
        return view('pages.clubs.create_club')->with($data);
    }

查看屏幕截图以了解我的意思

4

1 回答 1

1

对于 1 和 2,您可以使用名为selected的插件,它有很好的文档并且很容易实现。

对于第 3 个问题,您可以将其以 json 格式保存在数据库中,如下所示:

$days = "Monday,Tuesday,Wednesday"; 
//or $days = $request->weekdays;
$parsed = explode(",", $days);
$selected_weekdays = json_encode($parsed);

Model::create(['weekdays' => $selected_weekdays]);

然后,您可以通过解码 json 字符串来显示刀片上的值,如下所示:

$selected_weekdays = json_decode($model->weekdays);

{{Form::select('weekdays[]',$weekdays,$selected_weekdays,array('multiple' => 'multiple'))}}

更新 1:

建议使用 bower 安装它:

bower install chosen

使用选择:

<link rel='stylesheet' type="text/css" href="{{ asset('bower_components/chosen/chosen.min.css') }}" rel="stylesheet">

{{Form::select('weekdays[]',$weekdays,$selected_weekdays,array('multiple' => 'multiple', 'class' => 'chosen-select'))}}

<script src="{{ asset('bower_components/chosen/chosen.jquery.min.js') }}"></script>

<script>
    $(".chosen-select").chosen();
</script>
于 2019-04-08T08:51:29.610 回答