原文:嘿嘿。今天学习了AJAX的几个方法

今天学习了AJAX的几个方法,其实我很早在公司实习的时间就认识了它,但是对它一无所知,也并没有去学习它,今天学习它让我感到很兴奋因为重新了解了它,嘿嘿,下面就来总结一下今天学习的吧。

一.在javascript中写AJAX

<script>
window.onload = function () {
document.getElementById("txtName").onblur = function () {
var xml = new XMLHttpRequest(); //1 首先要创建异步对象
xml.open("get", "JSAjax.ashx", true);//2 以get方式打开要发送的地址
xml.onreadystatechange = function () {
if (xml.statusText == ) {
alert(xml.responseText);//当接受状态等于4的时候,已经接受到了服务器传递过来的值。
}
}
xml.send(null);//发送邮件,当为get方式时间发送的请求为空
}
} //window.onload = function () {
// document.getElementById("txtName").onblur = function () {
// var xml = new XMLHttpRequest();
// xml.open("post", "JSAjax.ashx", true);
// xml.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
// xml.onreadystatechange = function () {
// if (xml.statusText == 4) {
// alert(xml.responseText);
// }
// }
// xml.send("txtname="+this.value)
// }
//}
</script>
</head>
<body>
<input type="text" name="txtname" id="txtName"/>
</body>
</html>
  public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
string name = context.Request.QueryString["txtname"];
//string name = context.Request.Form["txtname"];
if (!string.IsNullOrEmpty(name))
{
context.Response.Write("您的用户名"+name + "可用");
}
else
{
context.Response.Write("您的用户名不可用");
}
}

上面是在javascript中写的ajax,Ajax在本质上是一个浏览器端的技术,Ajax技术之主要目的在于局部交换客户端及服务器间之数据,这个技术的主角XMLHttpRequest的最主要特点,在于能够不用重新载入整个版面来更新资料,也就是所谓的Refresh without Reload(轻刷新)与服务器之间的沟通,完全是透过Javascript来实行,使用XMLHttpRequest本身传送的数据量很小,所以反应会更快,也就让网络程式更像一个桌面应用程序,AJAX 就是运用Javascript 在后台悄悄帮你去跟服务器要资料,最后再由Javascript 或DOM 来帮你呈现结果,因为所有动作都是由Javascript代劳,所以省去了网页重载的麻烦,使用者也感受不到等待的痛苦。使用XMLHttpRequest对象  按照下面模式,可以同步地XMLHttpRequest对象:创建对象;-new创建请求; -open()发送请求;-send(),但是使用javascript比较麻烦,于是就改变为了jquery的使用方法。
                       二.JQuery中写AJAX

1.AJAX的$.Load事件( url,[,data][.callback])

<script src="Scripts/jquery-1.7.1.min.js"></script>
<script>
$(function () {
$("#Send").click(function () {
$("#resText").load("Ajax.ashx", { txtemail: "123@qq.com" }, function (msg) {
alert(msg);
});
});
});
</script>
<body>
<input type="button" value="AjaxLoad " id="Send"/>
<div class="comment">
已有评论
</div>
<div id="resText"> </div>
</body>
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
string email = context.Request.Form["txtemail"];
if (!string.IsNullOrEmpty(email))
{
context.Response.Write("<span>您的邮箱地址为"+email+"可用</span>");
}
else
{
context.Response.Write("<span>您的邮箱地址为" + email + "不可用</span>");
}
}

url:发送的地址,data:发送给服务器的键值对,callback:回调函数。

2.$.Get和$.Post方法

 <script>
$(function () {
//$("#send").click(function () {
// $.get("JQuery.ashx", { username: $("#username").val(), content: $("#content").val() }, function (msg) {
// $("#resText").html(msg);
// });
//});
$("#send").click(function () {
$.post("JQuery.ashx", { username: $("#username").val(), content: $("#content").val() }, function (msg) {
$("#resText").html(msg);
});
});
});
</script>
<body>
<form id="form1" action="#">
<p>评论:</p>
<p>姓名:<input type="text" name="username" id="username" /></p>
<p>内容:<textarea name="content" id="content" rows="" cols=""></textarea></p>
<p><input type="button" name="name" value="提交 " id="send" /></p>
</form>
<div class="comment">
已有评论
</div>
<div id="resText">
</div>
</body>
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
//string name = context.Request.QueryString["username"];
//string content = context.Request.QueryString["content"];
string name = context.Request.Form["username"];
string content = context.Request.Form["content"];
if (!string.IsNullOrEmpty(name) && !string.IsNullOrEmpty(content))
{
context.Response.Write("<span>"+name+"评论:"+content+"</span>");
}
}

url:发送的地址,data:发送给服务器的键值对,callback:回调函数。

3.$.ajax方法

<script>
$(function () {
$("#send").click(function () {
$.ajax({
type: "post",
url: "1.js",
dataType: "script",
success: function (msg)
{
alert(msg);
}
});
});
})
</script>

url:发送的地址,type:请求的类型,timeout:请求时间,beforesend是在请求之前,complete:回调函数,success:成功后的回调函数。
                       今天就简单的总结到这里啦,已经很晚啦,嘿嘿,休息。加油加油!!!

嘿嘿。今天学习了AJAX的几个方法的更多相关文章

  1. 前端学习——使用Ajax方式POST JSON数据包

    0.前言     本文解释怎样使用Jquery中的ajax方法传递JSON数据包,传递的方法使用POST(当然PUT又有时也是一个不错的选择).POST JSON数据包相比标准的POST格式可读性更好 ...

  2. jquery学习之AJAX

    1,关于AJAX的简单介绍 AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 不是新的编程语言,而是一种使用现有标准 ...

  3. java_web学习(16)Ajax

    Ajax       Ajax(Asynchronous JavaScript and XML的缩写),允许浏览器与服务器通信而无须刷新当前页面的技术都被叫做Ajax.       Ajax:一种不用 ...

  4. jQuery 学习05——AJAX:定义、load()方法、get()/post()方法

    AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML). load() 方法:从服务器加载数据,并把返回的数据放入被选元素中. 语法:$ ...

  5. 关于我们ajax异步请求的方法与知识

      做前端开发的朋友对于ajax异步更新一定印象深刻,作为刚入坑的小白,今天就和大家一起聊聊关于ajax异步请求的那点事.既然是ajax就少不了jQuery的知识,推荐大家访问www.w3school ...

  6. 小菜学习设计模式(三)—工厂方法(Factory Method)模式

    前言 设计模式目录: 小菜学习设计模式(一)—模板方法(Template)模式 小菜学习设计模式(二)—单例(Singleton)模式 小菜学习设计模式(三)—工厂方法(Factory Method) ...

  7. jQuery中的Ajax几种请求方法

    在网上查的几种Ajax的请求的方法: jQuery 确实是一个挺好的轻量级的JS框架,能帮助我们快速的开发JS应用,并在一定程度上改变了我们写JavaScript代码的习惯.废话少说,直接进入正题,我 ...

  8. jquery实现AJAX的4种方法

    当我们用javascript写ajax程序写得很“开心”的时候,突然有人告诉你有一种东西叫jquery,它会告诉你不直接和 HttpRequest是多么的快乐,同时你再也不需要再烦恼纠结的ajax乱码 ...

  9. Jquery Ajax调用aspx页面方法

    Jquery Ajax调用aspx页面方法 在asp.net webform开发中,用jQuery ajax传值一般有几种玩法 1)普通玩法:通过一般处理程序ashx进行处理: 2)高级玩法:通过as ...

随机推荐

  1. Ubuntu 13.10 安装 Unity 8 试用截图

    关于 Unity 8 有很多报道,Unity 8 相对于 Unity 7 变化相当大,这是 Ubuntu 团队打造的一款通用于 PC.手机.平板的桌面. Unity 8 已经登陆 ubuntu 13. ...

  2. firefox os 2.0版模拟器QQ初体验

    供firefox os 爱侣.firefox os 手机迟迟没有感到些许遗憾在中国上市会,但是,我们必须相信firefox os 登陆中国是迟早的事,腾讯QQ已经登陆firefox os 应用市场,今 ...

  3. Lucene40SkipListWriter

    多级跳跃表是保存在tim文件里的. tip是term index,tim是term dictionary.记忆方法是,p是pointer因此是term index. 这个类会保存多个level的las ...

  4. Shell 遍历字符串与参数

    遍历字符串: for line in  $Table_List do         echo $Table_List         echo $Table_List >> ${SYB_ ...

  5. 【白痴弟弟和你加强应用层】阅读 Develop API Guides 思考(一个)

    转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 动态检測设备属性 关于targetSdkVersion的含义 关于onSaveInstanceState的高 ...

  6. Matrix+POJ+二维树状数组初步

                                                                                                         ...

  7. 《编程简介(Java) &#183;10.3递归思想》

    <编程简介(Java) ·10.3递归思想> 10.3.1 递归的概念 以两种方式的人:男人和女人:算法是两种:递归迭代/通知: 递归方法用自己的较简单的情形定义自己. 在数学和计算机科学 ...

  8. [LeetCode328]Odd Even Linked List

    题目: Given a singly linked list, group all odd nodes together followed by the even nodes. Please note ...

  9. BZOJ 3236 AHOI 2013 作业 莫队算法

    题目大意:给出一些数,问在一个区间中不同的数值有多少种,和在一个区间中不同的数值有多少个. 思路:因为没有改动,所以就想到了莫队算法.然后我写了5K+的曼哈顿距离最小生成树,然后果断T了.(100s的 ...

  10. 【Android基础】listview控件的使用(2)-------继承自ListActivity的普通listview

    由于listview在android控件中的重要性,所以android为我们直接封装了一个类ListviewActivity,直接将listview封装在了activity之中,在本篇中,我将介绍在L ...