Не удается настроить базовый мультиселект select2 для работы в моем браузере, используя Laravel 5.8 - PullRequest
1 голос
/ 10 апреля 2019

Я пытаюсь включить функцию select-multi-select в свое приложение, но не могу заставить ее работать. Я включил свой код ниже. Я рассмотрел все основные проблемы, с которыми обычно сталкиваются люди, и мой код должен загружаться в соответствующем порядке.

Просмотр

@extends('layouts.layout')
@extends('layouts.navbar')

@section('content')

                <fieldset>
                        <small class="errorMessage"></small>
                        <label for="tags">Tags</label>
                        <select name="tags" id="tagsList" class="select2-multi form-control" multiple="multiple">
                            @foreach($tags as $tag)
                                 <option value="{{$tag->id}}">{{$tag->name}}</option>
                            @endforeach
                        </select>
                </fieldset>

Файл макета

<!DOCTYPE html>
<html lang="en">
<head>

<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="csrf-token" content="{{ csrf_token() }}">

<!-- CSS -->
<link rel="stylesheet" href="{{asset('css/app.css')}}">
<link rel="stylesheet" href="{{asset('css/main.css')}}">
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.1/css/all.css">
<link rel="stylesheet" href="{{asset('css/select2.min.css')}}">

<!-- Google Fonts -->
<link href="https://fonts.googleapis.com/css?family=ZCOOL+XiaoWei" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Nunito|Raleway" rel="stylesheet">


<!-- JavaScript -->
<script src="/js/jquery.js"></script>
<script src="/js/bootstrap.js"></script>


<title>Plant Lab</title>
</head>
<body>

@include('includes.messages')
@yield('jumbotron')
@yield('content')



<script src="{{asset('js/custom.js')}}"></script>
<script src="{{asset('js/select2.min.js')}}"></script>

</body>
</html>

Пользовательский файл JS

// Select 2 

$(document).ready(function() {
    $('.jselect2-multi').select2();
});

Мой браузер просто отображает обычную HTML-форму выбора, а Select2 не применяется. Куда я иду не так? Спасибо!

1 Ответ

0 голосов
/ 10 апреля 2019

сделать массив имен вашего поля ввода,

<select name="tags[]" id="tagsList" class="select2-multi form-control" multiple="multiple">
  @foreach($tags as $tag)
  <option value="{{$tag->id}}">{{$tag->name}}</option>
  @endforeach
</select>

Вы допустили ошибку типа,

// Select 2 

$(document).ready(function() {
    $('.select2-multi').select2(); // class name should be select2-multi not jselect2-multi
});
...