Ich versuche Eulenkarussell nach einem erfolgreichen Ajax-Aufruf neu zu initialisieren. Der Ajax-Aufruf wird die Daten ändern, aber die Ansicht sollte gleich bleiben. Ich habe ein Problem, bei dem die View-Karussell-Struktur nicht reinitialisiert wird. Ich weiß nicht, wo ich Fehler gemacht habe.Wie Owl Carousel nach Ajax-Aufruf neu initialisieren?
Ajax Anfrage
$(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
});
}
});
});
Regler Funktion
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;
}
Ansicht
<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>
Ich habe '$ ('. Owl-gallery'). OwlCarousel ('refresh');' aber immer noch owlCarousel funktioniert nicht. –
Ich habe diesen Weg hinzugefügt 'success: function (result) { $ ('# demo') .html (Ergebnis); $ ('. Owl-gallery'). OwlCarousel ('refresh');} ' ist dieser korrekte Weg –
Entschuldigung, um zu klären, müssen Sie 'Aktualisieren' zu 'zerstören' oder 'aktualisieren' ändern. Ich meinte damit nur, wie du die Methode nennst. –