justdoit 发表于 2012-2-23 13:40:11

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们注意一下。
在这里有点不太清楚:这个"/"和"./"究竟有什么区别,希望高手们能够解析得透彻一点!

yuzhigang5460 发表于 2012-2-23 13:54:01

这个应该很好测试,用firebug跟踪一下post出去的url地址到底是什么。
估计跟浏览器的解析有过。
你换个浏览器再次测试一次看看。

justdoit 发表于 2012-2-23 14:16:13

谢谢楼上的提供的方法,我用firebug查看后,终于知道了原因。
两种情况下的URL不相同。一个URL是完整的正确的,另一个URL是不完整的错误的。

Hex 发表于 2012-2-23 14:16:17

实际上应该用绝对 URL,也就是 http:// 开头的URL 来做请求。
./ 和 / 都是不准确的。

justdoit 发表于 2012-2-23 14:19:06

如果写上绝对路径的话"http://localhost/--------"这样子,那不是很长啊,以后扩展也不容易扩展啊。如果把这些路径定义到config里面,再视图里拿出来使用,应该也可以吧?

Anonymous 发表于 2014-1-18 02:16:32

Bad RequestHTTP Error 400. The request is badly formed.

kevin11 发表于 2014-1-19 10:04:15

不是有BASE_URL吗?
页: [1]
查看完整版本: IBM developer官网看到的关于CI、AJAX、JQuery的文章,请教一些问