用 jQuery 的ajax 功能 POST 数据
jQuery的功能很强很全面 既可以用GET方式请求数据 也可以用POST方式想服务器发送数据
决定给龙卷风添加一个用户评价的功能,以帮助判断本站提供的资料对用户的有用性,提供更好、更有用的资料。
决定用ajax来完成这个功能。
第一个想到的使用jQuery来辅助完成。以往的经验,使用jQuery的ajax功能,都能极大的简化js代码。先建表、完成后台响应页面的编程,接着用jQuery读取资料,都没有问题,很顺利。
碰上困难是在用POST方式向服务器提交数据,进行DIGG操作的时候。点击之后没有放映,设置了timeout属性也没有效果,设置了error参数提示错误。到底错在那里呢?
总不能为了测试接收数据的页面而单独写一个Form表单吧,嗯,把接收方法改为QueryString方式,马上得到答案,是服务器响应页面的错误,导致jQuery不能获取到预定的内容。
起初还以为是jQuery不能发送POST方式的数据,或者是发送过去的数据不能在 asp.net 中用Request.Form(string)这样的方式接收呢,是一篇文章误导了我,见:
http://www.javaeye.com/problems/5717此文的答案是错误的,切记!
其实按照jQuery文档中的示范,是完全可能的:
代码如下
-
$.ajax(
-
{
-
type:"POST",
-
url:"/Digg.aspx",
-
dataType:"xml",
-
data:"articleId="+aid+"&diggType="+dtype,
-
error:function(){
-
alert("error!");
-
},
-
success:function(msg){}
-
});
这是本站的代码,你可以在这个页面的源码中看到。
我来说两句
1 楼 aaa 发表于 2009-12-3 From IP: 219.133.168.253
Test
作者主页: http://www.baidu.com
2 楼 fdfafd 发表于 2009-9-25 From IP: 61.171.173.28
你好fda
作者主页: http://www.baidu.com