我想点击一个按钮,让它拉取数据,然后将其加载到视图中,并将其显示在页面上,而不刷新页面。我知道我需要使用AJAX来做到这一点。我是AJAX的新手。如何使用我的views / controller / javascript进行设置?
我有一个按钮<a id="pick-btn">Pick</a>
和一个包含div <div id="pick-list"></div>
。如何通过我的控制器获取所需的数据,并将数据显示在包含div的视图中?
这是我的控制器功能:
public function pick_list()
{
$data['list'] = $this->model->get_stuff();
$this->load->view('someview', $data, TRUE);
}
这是我的javascript来处理按钮点击事件
$('a#pick-btn').click(function(e){
e.preventDefault();
$.ajax({
type: 'get',
url: 'controller/function',
dataType: 'html',
success: function (html) {
$('#pick-list').html(html);
}
});
});
但是,这没有做任何事情。我究竟做错了什么?请帮忙!
更新:
好的,我通过测试一些静态URL(这是我的问题,JavaScript没有获取控制器/方法的URL并由于某种原因动态查看文件)来实现这一点。现在,当我加载视图时,它会加载除了命中form_input()
之外的所有内容。基本上任何与php无关的部分都无法加载并告诉我form_input()是一个未定义的函数,等等等等等等。为什么它不会识别该函数和所有其他php变量?