Laravel: Можно ли загрузить представление лезвия в модал jquery? - PullRequest
0 голосов
/ 09 января 2019

Ниже приведен файл основного блейда, который я хочу загрузить в модальный режим.

@extends('layouts.app')

@section('title', trans('pages.jobs.show.header_title') ?: trans('pages.jobs.show.title'))

@section('navigation')

@endsection

@section('content')
    <div class="container">
        <div class="page-dashboard">
            {{ all teh content loaded: such as SVG grapgh using JS }}
        </div>
    </div>

    <nav class="container-fluid nav-bottom" data-js="nav-bottom">

        <div class="nav-bottom__overlay"></div>

    </nav>    

    @push('scripts')
        <script src=""></script>
    @endpush
@endsection

Я пытался использовать bootstarp.js модальный, но модальный не загружается, он загружается на главной странице.

Можно ли загрузить весь нож с включенными в него CSS и js?

Пожалуйста, предоставьте мне любой пример. Может быть, я должен использовать AJAX:

$('#modellink').click(function(){

            $.ajax({
                type : 'GET',
                url : $(this).data('path'),

                success: function(result, url) {

                    $('.modal-body').html(result);
                    $('#myModal').modal('show');

                    $('.modal-container').load($(this).data('path'),function(result){
                        $('#myModal').modal({show:true});
                    });
                }
             });
        });

Ответы [ 3 ]

0 голосов
/ 09 января 2019

Короче - да.

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

В качестве альтернативы, используйте @include('modal.name.blade') и используйте его как часть страницы, которая использует модальное с правильным html / css, конечно, для вашего соответствующего модального скрипта.

0 голосов
/ 09 января 2019

Если у вас есть файл вызова modal.blade.php, в котором есть все HTML, CSS и JS для этого модального режима, вы можете включить его на любой странице с помощью @include("modal"). Например:

modal.blade.php

<style>...</style>

<div class="modal fade" tabindex="-1" role="dialog">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                <h4 class="modal-title">Modal title</h4>
            </div>
            <div class="modal-body">
                <p>One fine body&hellip;</p>
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                <button type="button" class="btn btn-primary">Save changes</button>
            </div>
        </div>
    </div>
</div>

<script type="text/javascript">...</script>

Затем в вашем основном файле:

main.blade.php

@extends("layout")
@section("content")
@include("modal")
<div>...</div>
0 голосов
/ 09 января 2019

Возвращает строку HTML

// SomeController::getModal()
return view('layouts.someview', $data_array)->render();

Загрузить его в модал

 $.ajax(
  // blah,
  // blah,
  success: function(response) {
    $('#modal').html(response)
  }
)
...