Да, изображения будут другие, получаемые из БД, шаблон для примера
Собака - это не для проверки, это особенности ларавелевского шаблонизатора blade, она используется для отображения циклов - @for, @foreach, проверок @if b т.д. Я так думаю, что вместо этого цикла на сервере @foreach($product->image as $item) <li class=""> <img src="{{ asset('img') }}/catalog/{{ $product->category_alias }}/{{ $item->img }}" alt=""> </li> @endforeach нужно сделать цикл в скрипте, а потом уже подставить в UL Вопрос - возможно такое? |
Ну если шаблонизатор, тогда ...
То есть нужно точно такой же html код получить как и в шаблоне? Если да, то response.title уже не получиться, ибо response это массив, значит response[0].title. А изображения это response[1]. Обходите циклом его и создавайте элементы li c изображениями, данные для которых берите из этого массива: $.each(response[1], function() { //тут элементы этого массива, например имя изображения (насчет путей к ним не известно) this.img }) Как создавать и добавлять элементы в JQ думаю не надо рассказывать. |
Огромное спасибо, все работает. Добавляю картинки так:
$(".product-preview").append("<li><img src='{{ asset('img') }}/catalog/"+response[0].category_alias+"/"+this.img+"'></li>"); Только небольшой косяк - после закрытия модального окна продукта, если открыть следующее окно, то старые картинки остаются, а к ним добавляются новые. Подозреваю, что дело в методе append(). Может какой другой использовать или сделать прерывание функции после открытия окна? Я пробовал добавить return false, не помогло |
Можно очищать перед запросом родителя - $(".product-preview").empty(), можно не .append(), а готовить html и вставлять его, старый при этом будет перезаписан. Но, если "открыть следующее окно" означает повторное открытие с теми же данными (ранее полученными), то выгоднее перед запросом проверять - если родитель $(".product-preview") пустой, то делаем запрос и заполняем его данными, и показываем, иначе только показываем.
PS. А откуда на клиенте может взяться {{ asset('img') }}? Это ведь переменная серверная, которая передается в шаблонизатор. |
$(".product-preview").empty() работает прекрасно
Спасибо Вам за помощь, удачи Вам и здоровья!! |
А {{ asset('img') }}?
|
Забыл :))
Это адрес сайта и папка img. В принципе, можно было написать просто /img, но как-то привык уже |
Цитата:
|
Подставится так
$(".product-preview").append("<li><img src='{{ asset('img') }}/catalog/"+response[0].category_alias+"/"+this.img+"'></li>"); |
И кто же это сделает?
|
Часовой пояс GMT +3, время: 05:17. |