我只是尝试使用jquery ajax按类别ID加载特定的类别页面。我用ajax加载函数加载页面。它显示页面但是在ajax加载codeigniter之后注意到我的id是未定义的。请帮帮我。
这是我的ajax代码:
$(document).ready(function() {
function loadContent(url) {
$.ajax({
url: url,
method: 'POST',
data: {
id: 5
},
cache: false,
success: function(data) {
alert(url + id);
$('body').load(url + id);
}
});
}
$('.links a').click(function(e) {
e.preventDefault();
var URL = $(this).attr('href');
var url = baseURL + 'Category/category_show/';
history.pushState(null, null, URL);
loadContent(url);
});
});
这是我的控制器:
public function category_show()
{
$id = $_POST['id'];
echo $id;
$data = array();
$data['category_wise_product'] = $this - > Category_Model - > getCategoryProduct($id);
$data['page_content'] = $this - > load - > view('site/pages/category', $data, true);
$this - > load - > view('site/homepage', $data);
}
答案 0 :(得分:-1)
当您使用html()
代替load()
时,它会有效。
.load
是执行异步请求并将内容放在您调用它的元素中的简写。
.html
是一个将参数作为您调用它的元素的内容放入它的方法。