[英]calling a codeigniter controller method from jquery
我想从 jquery 中调用 codeigniter controller 方法到目前为止我正在尝试这样的事情,但它不起作用任何人都可以帮助我
$.ajax({type: "POST", url:"site/controller/method/",
success: function(){
alert("success");
},
error: function(xhr, textStatus, error){
alert(xhr.statusText);
alert(textStatus);
alert(error);
}
});
我自己使用CI,发现在处理AJAX请求时需要直接指向文件,如果需要的话,用它推送一些变量。
$.ajax({
type: "POST",
url: "system/application/views/ajax.php",
data: "key=value",
success: function(){ alert("success"); },
error: function(xhr, textStatus, error){
alert(xhr.statusText);
alert(textStatus);
alert(error);
}
});
你的问题很模糊:你得到了 404 吗? 您是否收到 javascript 错误? 出了什么问题?
如果您遇到 404 错误,最简单的方法是在浏览器的位置栏中测试 URL:您可以在浏览器位置栏中打开的任何 URL 都可以复制到 ZDE9B9ED70D7F2E1ZEEE 中,并且肯定会工作。 从浏览器位置栏或锚点调用的 URL 与从 jquery post
或get
或ajax
调用的 URL 之间的代码点火器端应该没有区别。
我建议使用Firebug来查看幕后发生的活动:它可能会使您更容易查明这些错误。
尝试这个
var base_url ='你的基础 url;
$.post(base_url+"/controller/function", {'param1': x,'param2':y}, function(data){
if(data.length >0) {
//do whatever you want
}
});
我制作了一个名为 ajax 的 controller,其中我有我所有的 axaj 方法。 并返回 json 编码的东西。
jquery 东西:
$.post("ajax/stuff", function(data){
alert(data.some_data); // John
}, "json");
在 ajax controller 中:
public function stuff()
{
$response_array = array();
$response_array['some_data'] = 'lorem ipsum';
//$response_array['html'] = $this->load->view('popbox_error', $data, true);
$data['json'] = json_encode($response_array);
$this->load->view('json_response', $data);
}
json 查看:
<?php echo $json;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.