У меня есть модал, который динамически отображает данные о продукте. Мне удалось заставить это работать через Jquery:
$(document).on('click', '.show-modal', function() {
$('#show').modal('show');
$('#i').text($(this).data('id'));
$('#ti').text($(this).data('name'));
$('#by').text($(this).data('description'));
$('#pr').text($(this).data('price'));
// $('#im').text($(this).data('image'));
$('#image').html($(this).data('image') );
$('.modal-title').text('Show Post');
});
Единственная проблема, я не могу передать изображения, передавая #image id в поле зрения. Это выглядит так:
<img class="first_img" src=" " alt=""/>
Если я перейду в src = "", я увижу URL изображения, но изображение не показывается.
Кнопка модальной активации выглядит следующим образом:
<a href="#" class="show-modal btn btn-info btn-sm" data-id="{{$product->id}}"
data-name="{{$product->name}}" data-description="{{$product->description}}" data-price="{{$product->price}}"
data-image="{{ asset('storage/'.$product->images->first()->full) }}" >
<i class="fa fa-eye"></i>
</a>
Все текстовые данные, такие как $ product-> id, $ product-> name, передаются динамически нормально. Единственная проблема, я не знаю, как передать изображение динамически.
Вот HTML модального:
<div class="modal fade" title="modal" id="show" tabindex="-1" role="dialog" aria-labelledby="quickview" aria-hidden="true">
<div class="modal-dialog modal-lg modal-dialog-centered" role="document">
<div class="modal-content">
<button type="button" class="close btn" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<div class="modal-body">
<div class="quickview_body">
<div class="container">
<div class="row">
<div class="col-12 col-lg-5">
<div class="quickview_pro_img">
<img class="first_img" src="" id="image" alt=""/>
<img class="hover_img" src="{{ asset('storage/'.$product->images->random()->full) }}" alt="">
<!-- Product Badge -->
<div class="product_badge">
<span class="badge-new">New</span>
</div>
</div>
</div>
<div class="col-12 col-lg-7">
<div class="quickview_pro_des">
<h4 class="data"></h4>
<b id="ti"/>
<div class="top_seller_product_rating mb-15">
<i class="fa fa-star" aria-hidden="true"></i>
<i class="fa fa-star" aria-hidden="true"></i>
<i class="fa fa-star" aria-hidden="true"></i>
<i class="fa fa-star" aria-hidden="true"></i>
<i class="fa fa-star" aria-hidden="true"></i>
</div>
<h5 class="price">{{config('settings.currency_symbol')}} <b id="pr"/></span></h5>
{{--description--}}
<p><b id="by"/></p>
<a href="{{ route('product.show', $product->name) }}">View Full Product Details</a>
</div>
<!-- Add to Cart Form -->
<form class="cart" method="post">
<button type="submit" name="addtocart" value="5" class="cart-submit">Add to
cart</button>
<a href="" type="" value="5" class="cart-submit">Product Details</a>
<!-- Wishlist -->
<div class="modal_pro_wishlist">
<a href="wishlist.html"><i class="icofont-heart"></i></a>
</div>
<!-- Compare -->
<div class="modal_pro_compare">
<a href="compare.html"><i class="icofont-exchange"></i></a>
</div>
</form>
<!-- Share -->
<div class="share_wf mt-30">
<p>Share with friends</p>
<div class="_icon">
<a href="#"><i class="fa fa-facebook" aria-hidden="true"></i></a>
<a href="#"><i class="fa fa-twitter" aria-hidden="true"></i></a>
<a href="#"><i class="fa fa-pinterest" aria-hidden="true"></i></a>
<a href="#"><i class="fa fa-linkedin" aria-hidden="true"></i></a>
<a href="#"><i class="fa fa-instagram" aria-hidden="true"></i></a>
<a href="#"><i class="fa fa-envelope-o" aria-hidden="true"></i></a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
Как это сделать?