Я нахожусь в точке, где мне нужно показать успешное (или нет) сообщение, мне нравятся модальные окна, потому что они замораживают все позади (основной вид) и показывают эту маленькую рамку с каким-то сообщением. Я видел много примеров, но большинство из них показывают эти «предупреждающие» поля на странице, и я думаю, что у меня должно быть представление (называемое модальным), и каждый раз, когда мне нужно его показать, я просто передаю правильные аргументы, и представление будет объявиться.
Что я наделал:
Создал маршрут к контроллеру.
$.ajax({
method: 'POST',
url: '/angariacoes/insertImovel',
dataType: "json",
data: {"_token": "{{ csrf_token()
}}",values,eachImage,eachImageThumb},
success: function(response){
window.location.href='/popup/popup';
},
error: function(jqXHR, textStatus, errorThrown) {
}
});
Но теперь, как мне показать это представление (с модальным кодом ускорения) как модальное? Кто угодно?
С уважением






Поместите div внутри модального тела, а затем вы можете просто передать представление в качестве ответа:
$.ajax({
method: 'POST',
url: '/angariacoes/insertImovel',
dataType: "json",
data: {"_token": "{{ csrf_token()
}}",values,eachImage,eachImageThumb},
success: function(response){
$('#myAjaxTarget').html(response);
$('#myModal').modal('show');
},
error: function(jqXHR, textStatus, errorThrown) {
}
});
Контроллер:
return view('my_view', compact($data));
Просто убедитесь, что модальная часть находится в том представлении, в котором вы хотите видеть всплывающее окно. Создайте отдельный блейд с модальным содержимым.
Итак, у меня есть the_main_view.blade.php, и в него я вставил:
<div class = "modal fade" id = "myModal" tabindex = "-1" role = "img" style = "overflow: hidden">
<div class = "modal-dialog">
<div class = "modal-content">
<div class = "modal-header">
<button type = "button" class = "close" data-dismiss = "modal" aria-hidden = "true">×</button>
<h4 class = "modal-title" id = "">Modal Title</h4>
</div>
<div class = "modal-body" id = "myAjaxTarget">
</div>
<div class = "modal-footer">
<button type = "button" class = "btn btn-default" data-dismiss = "modal">Close</button>
</div>
</div>
</div>
</div>
И у нас есть другое представление, my_view.blade.php, которое возвращается с помощью упомянутого выше метода контроллера:
<span>Literally any HTML</span>
Таким образом, ответ от вызова ajax - это просто my_view, который вы используете для замены HTML-содержимого #myAjaxTarget на. Таким образом, конечный модальный код будет выглядеть так:
<div class = "modal fade" id = "myModal" tabindex = "-1" role = "img" style = "overflow: hidden">
<div class = "modal-dialog">
<div class = "modal-content">
<div class = "modal-header">
<button type = "button" class = "close" data-dismiss = "modal" aria-hidden = "true">×</button>
<h4 class = "modal-title" id = "">Modal Title</h4>
</div>
<div class = "modal-body" id = "myAjaxTarget">
<span>Literally Anything</span>
</div>
<div class = "modal-footer">
<button type = "button" class = "btn btn-default" data-dismiss = "modal">Close</button>
</div>
</div>
</div>
</div>
Что затем отображается с помощью метода $ ('# myModal'). Modal ('show').
вы говорите: «Поместите div в модальное тело», поэтому в моем popupview.blade я должен добавить этот кусок кода? я не понимаю
Спасибо Махурин за развернутый ответ, привет
Мне очень жаль, Махурин, но не могли бы вы объяснить лучше, пожалуйста? у меня есть mainview.blade, где происходит ajax, затем у меня есть popupview.blade, где у меня есть модальный код. Я должен поместить код, который вы мне показали, в мой popupview.blade ?!