真的骄傲梦想家园
专业源于兴趣和努力

  一些简单的基础知识,一些小小的细节,也许就决定了一个功能甚至一个软件的成败。

  前几天做一个小功能,用户注册时使用Ajax检验用户名是否已被注册。因为在这个小项目中,只在这里使用了Ajax,所以就不打算用以前常用的Prototype。开始时是使用get方法提交数据的,后来想想,还是换成post吧,没别的原因,因为Prototype默认是使用post方法的,所以就觉得post看上去顺眼一点。写好的Javascript代码如下:

 

Javascript

 

后台代码如下:

 

Handler

 

  测试的时候发现,后台怎么也获取不到前台传来的数据,真是百思不得其解。翻了一下书,都是只说get不说post方法的,然后在百度上狂找资料,真是功夫不负有心人啊,终于找到了,原来要在open方法的后面加上一句话:

 

            var SendRequest=function(){
request
=CreateRquest();
request.open(
"post",option.Url,true);

request.setRequestHeader(
"Content-Type","application/x-www-form-urlencoded");

request.onreadystatechange
=ResponseRequest;
request.send(
option.Param);
}

 

  OK,事情就这么简单的搞定了,真是踏破铁鞋无觅处,得来全不废功夫啊。

  本人具体也没研究过为什么要加上这句话:

 

                request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");

 



  还望大虾们不吝赐教。

 

posted on 2008-10-04 09:21  真的骄傲  阅读(1917)  评论(13编辑  收藏  举报