JS файл не загружается через ajax вызов - PullRequest
1 голос
/ 12 апреля 2020

Что я делаю, так это то, что когда кто-то нажимает на кнопку поиска, он загружает код карусели html через вызов ajax, который находится в другом файле и помещается под <div id="filter_product"></div>. И это css и js связаны в верхнем и нижнем колонтитуле файла, где я делаю вызов ajax. Я звоню только html из карусели. Позвольте мне показать вам мой код

ajax вызов

                function submit() {
              $.ajax({
                method: "POST",
                url: "<?php echo base_url() ?>public_controller/search_product",
                dataType:'html',
                data: {color:color, year:year, cat:cat, brand:brand, model:model},
                success: function(data){
                  console.log(data);
                    $('#filter_product').html(data);
                }
              });
            }
            $(document).on('click','#serch_btn',function(){
              submit();
            })

код контроллера

  public function search_product(){
$data['cat'] = $this->input->post('cat');
$data = $this->load->view('public/result_product',$data,TRUE);
echo $data;}

Если я не вызываю код карусели через ajax позвоните и просто поместите это в index. php все работает нормально. но когда я набираю код через ajax call, то это js файл не работает и дисплей зашифрован, но html загружается нормально. Есть ли способ решить это. заранее спасибо

1 Ответ

2 голосов
/ 12 апреля 2020

Имя функции отправить зарезервировано . Вы не можете использовать это. Попробуйте переименовать его.

Предложение: в методе PHP вам не нужно использовать echo и base_url (), который вы можете использовать следующим образом

public function search_product(){
    $data['cat'] = $this->input->post('cat');
    $this->load->view('public/result_product',$data);
}
//////////////////////////////////////////////////////////
url: "<?= base_url('public_controller/search_product') ?>",

Поместите строку $('#filter_product').owlCarousel(); после $('#filter_product').html(data); в вашу AJAX функцию успеха запроса.

...