IBM developer官网看到的关于CI、AJAX、JQuery的文章,请教一些问
前面已经有CIER对这篇文章进行了补充,我这里再补充一下。相信很多学习ajax的都已经看到过这篇文章,链接:
其中这一段代码:
清单 7. 向 CodeIgniter 发布一个 Ajax 请求
// Ajax request to CodeIgniter controller "ajax" method "update_user_participation" // post the user_id, class_activity_id and participation_type_id fields' values $.post('/index.php/ajax/update_user_participation', { 'user_id':user_id, 'class_activity_id':class_activity_id, 'participation_type_id':participation_type_id }, // when the Web server responds to the request function(result) { } );
中的$.post的url地址有误:
原代码如下:/index.php/ajax/update_user_participation应该改为:
./index.php/ajax/update_user_participation
也就是/前面要加一个"."。
我在做测试的过程中花费了几个小时,始终返回不了值,最后试了一下在"/"前面加了一个"."后才返回成功。
希望在有用到这个测试的CIER们注意一下。
在这里有点不太清楚:这个"/"和"./"究竟有什么区别,希望高手们能够解析得透彻一点!
这个应该很好测试,用firebug跟踪一下post出去的url地址到底是什么。
估计跟浏览器的解析有过。
你换个浏览器再次测试一次看看。 谢谢楼上的提供的方法,我用firebug查看后,终于知道了原因。
两种情况下的URL不相同。一个URL是完整的正确的,另一个URL是不完整的错误的。 实际上应该用绝对 URL,也就是 http:// 开头的URL 来做请求。
./ 和 / 都是不准确的。 如果写上绝对路径的话"http://localhost/--------"这样子,那不是很长啊,以后扩展也不容易扩展啊。如果把这些路径定义到config里面,再视图里拿出来使用,应该也可以吧? Bad RequestHTTP Error 400. The request is badly formed. 不是有BASE_URL吗?
页:
[1]