ajax介绍
Posted 辅助园地
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ajax介绍相关的知识,希望对你有一定的参考价值。
说起ajax,我就会想起荷兰三剑客,想起红黑军团,范.巴斯滕、里杰卡尔德、古力特,永远的“阿贾克斯”。虽然昔日的豪门今日已然沦落,但我仍然愿意相信他会卷土重来,那时候他应踩着七彩祥云,所向披靡。我最欣赏他的是:他的天才球星都是自己发掘的。这就是原创的魅力所在,也是我喜欢他的原因。
但是我想说的ajax不是足球,它是jquery的亲生儿子,原意是“asynchronous javascript and xml”,中文:异步JavaScript和XML,所谓的异步就是在事件触发之后浏览器任然可以做其他的事情,与发生事件的控件无关,控件不受影响。
ajax作什么用呢?
ajax是客户端js或jquery和服务器端交互数据的利器,比如我们想把客户端的数据提交到服务器或从服务器端获得数据,这时候就是使用ajax的时候。它有一个最大的优点就是不会有网页刷新,有良好的用户体验。
ajax的格式怎样的呢?
$ajax({各种参数})
参数列表(本文只列出本人经常用到的)
type:两种经常使用的方式,Get 或 post,还有 PUT 和 DELETE (仅部分浏览器支持)
asyc:异步方式,一般选true
data:要发送的数据如,Id:"1"
success:function(){}请求成功后的回调函数
error:function(){}请求不成功的回调函数
还有一些参数,请亲们自行百度。
例子:
$.ajax({
type: 'post',
url: 'Handler.ashx',
async: true,
data: { ID: '1' },
success: function (result) {
var stu = eval('(' + result + ')');//包装为json格式的数据stu
},
error: function () {
alert("错误");
}
});
这几行代码的意思是采用异步方式发送一个ID为1的数据给Handler.ashx,如果请求成功,则将返回的数据通过eval()函数封装成json格式的数据stu,如果失败则输出警告框“错误”两字。
服务器端的响应代码如下:
public class Handler : IHttpHandler, IRequiresSessionState
{
public void ProcessRequest(HttpContext context)
{
string sstr = context.Request.Form["ID"].ToString();
string str_id = sstr.Substring(0, 1);
int Id = Convert.ToInt32(str_id);
if (Id == 1)
{
List<stufile> nlist = new List<stufile>();
nlist = stufileDal.GetstuFile();
if (nlist != null)
{
string rtnlist = JsonConvert.SerializeObject(nlist);
context.Response.Write(rtnlist);
}
}
这段代码的意思,解释如下:
string sstr = context.Request.Form["ID"].ToString();
这句的意思是获得客户端名为ID的数据,我的客户端的数据为1。
string str_id = sstr.Substring(0, 1);
int Id = Convert.ToInt32(str_id);
这两句的意思是转换客户端名为ID数据的第一个字符为整型数据id。
if (Id == 1){
//要返回客户端的数据
}这段代码的意思就是判断id为1的话,在此组织数据返回给客户端。我的代码如下:
List<stufile> nlist = new List<stufile>();
nlist = stufileDal.GetstuFile();
if (nlist != null)
{
string rtnlist = JsonConvert.SerializeObject(nlist);
context.Response.Write(rtnlist);
}
前两句就是获得一个List<stufile>,stufile是我定义的数据,亲们可以定义自己的类型和获得方法。
string rtnlist = JsonConvert.SerializeObject(nlist);
是将获得的数据封装为json格式
context.Response.Write(rtnlist);
是将json格式的数据返回给客户端,也是$ajax({success:function(result){}})中result的数据来源。
至此,ajax的基本功能介绍完毕。现在很多网页都是ajax响应,如果读懂它的ajax响应,我们完全可以写个自动登录,自动刷分的demo,此为题外话,仅作研究之用。
以上是关于ajax介绍的主要内容,如果未能解决你的问题,请参考以下文章