Nano Hash - криптовалюты, майнинг, программирование

Плагин Select2 не работает в Laravel 5.4

Я использую ларавель 5.4. Теперь я использую плагин select2 для отображения параметров выбора на нескольких уровнях. Вот мой код

@extends('layouts.app')

@section('content')
<html lang="">
<body>
    <div class="container">
        <div class="row">
            <div class="col-md-8 col-md-offset-2">
                <div class="panel-body">
                    <div class="form-group">
                        <label for="matching_star" class="col-md-4 control-label">Matching Star</label>
                        <div class="col-md-6">
                            <select name="matching_star" class="form-control select2" id="matching-star" multiple>
                                <option value="aaa">aaa</option>
                                <option value="bbb">bbb</option>    
                            </select>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>

<script type="text/javascript" src="{{ URL::asset('https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js') }}"></script>
<link rel="stylesheet" href="{{ URL::asset('https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/css/select2.min.css') }}" />
<script type="text/javascript" src="{{ URL::asset('https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/js/select2.min.js') }}"></script>

<script type="text/javascript">
    $('#matching-star').select2();
</script>

</html>
@endsection

Мой app.blade.php

<!DOCTYPE html>
<html lang="{{ config('app.locale') }}">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <!-- CSRF Token -->
    <meta name="csrf-token" content="{{ csrf_token() }}">

    <title>{{ config('app.name', 'Laravel') }}</title>

    <!-- Styles -->
    <link href="{{ asset('css/app.css') }}" rel="stylesheet">

    <!-- Scripts -->
    <script>
        window.Laravel = {!! json_encode([
            'csrfToken' => csrf_token(),
        ]) !!};
    </script>
</head>
<body>
    <div id="app">
        <nav class="navbar navbar-default navbar-static-top">
            <div class="container">
                <div class="navbar-header">

                    <!-- Collapsed Hamburger -->
                    <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#app-navbar-collapse">
                        <span class="sr-only">Toggle Navigation</span>
                        <span class="icon-bar"></span>
                        <span class="icon-bar"></span>
                        <span class="icon-bar"></span>
                    </button>

                </div>
            </div>
        </nav>
    @yield('content')
    </div>

    <!-- Scripts -->
   <script src="{{ asset('js/app.js') }}"></script>
</body>
</html>

Он не работает, только вход виден. Это ничего не предлагает, когда я нажимаю ввод. Если я удалю первую строку @extends('layouts.app'), то все будет нормально. Я думаю, что App.js из макета приложения переопределяет плагин select2. Как я могу реализовать множественный выбор, не удаляя макет приложения? Заранее спасибо.


  • Вы можете вставить содержимое layouts.app? 15.05.2017
  • Я добавил макет приложения. Проблема связана с файлом app.js. 15.05.2017
  • Ну... тогда попробуйте включить и этот файл, я не думаю, что кто-то догадается, что там... 15.05.2017
  • Вы получаете какие-либо ошибки в консоли браузера? 15.05.2017
  • Нет.. Я не получил никакой ошибки. Ввод виден, но нет предложения 18.05.2017

Ответы:


1

оберните свой javascript в готовый документ, подобный этому

<script>
$(document).ready(function() {
    $('#matching-star').select2();
});
</script>
15.05.2017
  • После добавления я получил эту ошибку TypeError: $(...).select2 не является функцией 15.05.2017

  • 2

    1) Пожалуйста, проверьте, правильно ли загружен ваш выбранный jQuery ИЛИ jQuery.min.

    2) Другой мудрый jQuery дважды присутствует на вашей странице.

    Я не уверен, но просто проверьте это. я надеюсь, что это полезно.

    15.05.2017

    3

    Удалите следующее из поля зрения и проверьте еще раз:

    <script type="text/javascript" src="{{ URL::asset('https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js') }}"></script>
    

    Насколько я знаю, app.js Laravel по умолчанию включает jQuery по умолчанию.

    15.05.2017
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..