ajax呼び出しが成功した後、私はowlカルーセルを再初期化しようとしています。 ajax呼び出しはデータを変更しますが、ビューは同じままでなければなりません。ビューのカルーセル構造が再初期化されないという問題があります。私はどこで間違ったのか分かりません。ajax呼び出し後にOwl Carouselを再初期化する方法は?
のAjaxリクエスト
$(document).on('click', '.category_list', function() {
var category_id = $(this).attr('data-id');
var _token = $('#_token').val();
var param = 'category_id=' + category_id + '&_token=' + _token;
$.ajax({
type: "POST",
datatype: "json",
url: "/master/sub_category",
data: param,
success: function(result) {
$('#test').html(result);
var owl = $(".owl-carousel");
owl.owlCarousel({
items: 4,
navigation: true
});
}
});
});
コントローラ機能
public function getImg() {
$post_data = Request::all();
$sub_img = $this->imgModel->getImgList($post_data);
$sub_img_html = '';
foreach ($sub_img ['data'] as $data_img) {
$img = '/img/sub_category/'.$data_img ['img'];
$sub_img_html .= '<div class="item">';
$sub_img_html .= '<img src="'.$img.'" />';
$sub_img_html .= '</div>';
}
echo $sub_img_html;
}
ビュー
<div id="demo">
<div id="test" class="owl-carousel">
<?php
if (!empty($img_category)) {
foreach ($img_category as $imgcategory){
?>
<div class="item">
<img src='/img/sub_category/<?= imgcategory['subcategory_img'] ?>'/></div>
<?php
}
}
?>
</div>
</div>
私は$( '。owl-gallery')を使用しました。owlCarousel( 'refresh'); 'でもowlCarouselは動作しません。 –
私はこの方法を追加しました。成功:function(result){ $( '#demo')。html(result); $( '。owl-gallery')。owlCarousel( 'refresh');} は正しい方法です –
ご迷惑をおかけして申し訳ございませんが、 '更新'を '破棄'または '更新'に変更する必要があります。私はちょうどあなたが方法を呼び出す方法を意味しました。 –