使用Ajax和Codeigniter查询DB(使用Bootstrap模式)

时间:2015-09-23 11:19:34

标签: php jquery ajax twitter-bootstrap codeigniter

这里简要介绍了我想要实现的目标:我有一个高级搜索按钮,可以在输入字段上打开一堆并选择。我必须使用DB中的选项自动填充选择,所以我必须以某种方式从那里获取数据。

因为我不想在不需要时加载页面中的所有数据,所以当用户点击高级搜索的模式按钮时,我想使用AJAX来获取数据。

我已尝试使用以下代码实现此目的,但实际上并未发生任何事情:

查看:

<button type="button" class="btn btn-default" id="btnList" data-toggle="modal" data-target="#c_avan">CAUTARE AVANSATA</button>

$('#btnList').click(function() {
    $.ajax({
        url: '<?php echo site_url('/admin/date_cautare_avansata'); ?>',
        type: 'POST',
        data: {
            key: value
        },
        dataType: 'json',
        success: function(data) {
            console.log(data);
        }
    });
});

我尝试使用Ajax访问的控制器:

function date_cautare_avansata() {
        $data['items'] = $this->cautare_avansata_model->items();
        $data['major'] = $this->cautare_avansata_model->major();

        echo json_encode($data);
    }

这些模型并不重要,因为它们运行良好。知道为什么这根本不起作用吗?谢谢!

2 个答案:

答案 0 :(得分:0)

问题在于您的网址

url: '<?php echo site_url('/admin/date_cautare_avansata'); ?>',
     ^                    ^                            ^     ^

这应该是

url: "<?php echo base_url() ?>admin/date_cautare_avansata",

Ajax应放在

<script></script>

  

并且需要调用最新的 JS库

答案 1 :(得分:0)

试试这个......

$('#btnList').click(function() {
// Key must have a value. Assign that. 
//Site url no slash in prefix
    $.ajax({
        url: '<?php echo site_url('admin/date_cautare_avansata'); ?>',
        type: 'POST',
        data: {
            key: value
        },
        dataType: 'json',
        success: function(data) {
            console.log(data);
        }
    });
});