我正在编写我的第一个Codeigniter Web应用程序,并且我想使用AJAX为某个模式框提供一些信息。有人可以通过简单的方式引导我将ajax与CI结合起来吗?Codeigniter中的AJAX
具体来说,用户将点击一个链接,而不是被带到另一个页面,该页面将被加载到一个模式框。
谢谢!
我正在编写我的第一个Codeigniter Web应用程序,并且我想使用AJAX为某个模式框提供一些信息。有人可以通过简单的方式引导我将ajax与CI结合起来吗?Codeigniter中的AJAX
具体来说,用户将点击一个链接,而不是被带到另一个页面,该页面将被加载到一个模式框。
谢谢!
回答你的问题,因为CI似乎没有尚未实施的JavaScript库一个适当的支持,你可以使用这样的功能,以确保您正在处理的信息来自阿贾克斯:
http://snipplr.com/view/1060/check-for-ajax-request/
注意,这仅与像jQuery JavaScript库或MoonTools
之后的作品,你只需要处理的信息,就好像它是一个正常的页面,用$这个 - 获取数据>输入 - > post('field')或$ this-> input-> get('field')消毒变量。
的例子(使用jQuery),假设你有要在项目的列表中删除的行中的锚标记:
$(function() {
$('a.delete').click(function(e) {
// prevents the default behaviour of the anchor
e.preventDefault();
// gets the id stored in the anchor as attribute
var cid= $(this).attr('cid');
// instantiate and executes the ajax
$.ajax({
type: 'POST',
url: 'http://www.yoursite.com/ajax.php',
data: "action=delete&cid="+cid,
async: true,
success: function(data){
// alerts the response, or whatever you need
alert(data);
}
});
});
在此之后,你只需要建立CI代码作为普通页面。请注意,我在ajax请求(基础url,参数数据)中使用了普通的url,并且不知道它是否可以正常使用“url_rewrited”url,但它们可能没有问题,如果您只是使用“ url:“ajax参数来插入完整的url。
我真的很感激一个例子! :) – 2009-12-09 06:51:31
除了http://example.com/somepage.php之外,您通常会在http://example.com/index.php/someclass/somemethod或http://example.com/中放置CI类/方法 – andyk 2009-12-09 12:01:18
我修改了这个以使用我的模态。非常感谢你! – 2009-12-12 00:41:53
你想学习ajax或只是知道如何在CI中使用它?另外,Kohana的岩石比CI要多;) – yoda 2009-12-09 06:25:21
在CI中使用ajax。告诉我为什么Kohana更好。 – 2009-12-09 06:34:56
Kohana是一群伟大的编程人员,他们在CI中找到了一个很好的基础,但改变了很多东西,以便获得更好的框架。实际上,他们从Cake,Symfony等其他fw中获得了很多想法,并将自己的最佳做法融合在一起。它是社区驱动的,不是像CI这样的公司驱动的,它有很多功能,如果你在http://kohanaphp.com – yoda 2009-12-09 06:40:15