Ajax

1:ajax是一种页面局部刷新的技术,不是整个页面刷新。这里就像论坛评论里面的刷新,只是局部的,不是页面全部提交到服务器。

2:页面不刷新,创建个WebClient,它和服务器进行交互。<XMLHttpRequest>

3:代码

Eg:这里就是向服务器发送请求,接受请求。

  1. <script type="text/javascript">
  2.     function btnClick() {
  3.         var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");//创建xmlhttp对象,这里相当于WebClient
  4.         if(!xmlhttp) {
  5.             alert("创建XML异常");
  6.             return
    false;
  7.         }
  8.         xmlhttp.open("POST", "/Default/Index" + new Date(), false); //准备向服务器Default发送请求
  9.         //XMLHTTP默认不是同步请求,也就是open方法并不像WebClient的DownLoadString那样,把服务器的数据拿到才返回,是异步的,因此需要监听
  10.        //onreadystatechange事件
  11.         xmlhttp.onreadystatechange=function() {
  12.             if (xmlhttp.readyState==4) {
  13.                 if (xmlhttp.status==200) { //状态码200表示成功
  14.                     alert(xmlhttp.responseText);
  15.                     document.getElementById("Text1").value = xmlhttp.responseText;
  16.                 } else {
  17.                     alert("ajax服务器返回错误");
  18.                 }
  19.             }
  20.         }
  21.         xmlhttp.send();//开始发送请求
  22.     }
  23. </script>

4:


在使用ajax的时候要注意里面的缓存,有可能不往服务器发送请求,可能从缓存中读取值。解决它的办法就是让每次发送的请求都不一样,加上时间。


不同的浏览器创建xmlhttp的方法是不同的。

5:Jquery里面的方法

  1. function btnClick2() {
  2.            var eeee = $("").val();
  3.            var ddd = $("").val();
  4.            $.post("GetDate.cs", { "djdhj": eeee, "": ddd }, function(data, textStates) { //post无缓存,第二个为往服务器那边传递的参数,利用的是键值对的形式
  5.                alert(data);
  6.                alert(textStates);
  7.            });
  8.        $.get(); //get这里可能有缓存
  9.        $.ajax(); //post,get内部实现是调用ajax方法
  10.        }

 

6:Json

Ajax传递复杂数据的时候我们必须要进行解析,但是我们使用Json来解决这个问题.

将复杂的数据按照自己的方式进行封装,在浏览器中可以转换为js可以识别的方式。

  1. //这里可以得到js提交到的数据
  2.           JavaScriptSerializer json=new JavaScriptSerializer();
  3.           string jsons = json.Serialize(new Person() {Name = "ahui", Age = 12}); //将对象转换为json对象
  4.           context.Response.Write(jsons); //输出函数

7:得到json字符串

  1. $(function() {
  2.            $.post("JSon.ashx", function (data, status) {
  3.                var person = $.parseJSON(data);//这里得到服务器端的数据
  4.                alert(person.name);
  5.            });
  6.        });

8:这里通过JQuery来读取服务器JSon.ashx端的返回结果,//$.post("服务器",function(data,status){});

data是服务器返回的数据,status是看可以往服务器发送不,看是否接通链路。

  1. $(function() {
  2.           $.post("JSon.ashx", function (data, status) {
  3.               alert(data);
  4.           });
  5.       });

9:(全局文件)配置文件的解释


讲解Application_Start文件中的代码

我们知道Global.asax.cs是最底层的代码,每一次iis请求,都会首先执行这里的代码,且只执行一次,下面就让我们来学习下,这里的代码的具体的意思。

Ajax学习记录的更多相关文章

  1. Ajax的学习记录

    Ajax学习笔记 1.同步与异步同步:客户端发送请求到服务端,当服务器返回响应之前,客户端都处于等待卡死状态异步:客户端发送请求到服务端,当服务器返回响应之前,客户端可以随意做其他事情,不会卡死 2. ...

  2. AJax 学习笔记二(onreadystatechange的作用)

    AJax 学习笔记二(onreadystatechange的作用) 当发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态XMLHttpRequest对象提供了on ...

  3. vue.js学习记录

    vue.js学习记录 文章已同步我的github笔记https://github.com/ymblog/blog,欢迎大家加star~~ vue实例 生命周期 beforeCreate:不能访问thi ...

  4. 【jQuery】精细学习记录

    [jQuery]精细学习记录 基础 基本语法: $(选择器).action(回调函数); $/jQuery //jQuery核心函数 $(选择器) //获得的jQuery对象 jQuery核心 - j ...

  5. Quartz 学习记录1

    原因 公司有一些批量定时任务可能需要在夜间执行,用的是quartz和spring batch两个框架.quartz是个定时任务框架,spring batch是个批处理框架. 虽然我自己的小玩意儿平时不 ...

  6. Java 静态内部类与非静态内部类 学习记录.

    目的 为什么会有这篇文章呢,是因为我在学习各种框架的时候发现很多框架都用到了这些内部类的小技巧,虽然我平时写代码的时候基本不用,但是看别人代码的话至少要了解基本知识吧,另外到底内部类应该应用在哪些场合 ...

  7. Apache Shiro 学习记录4

    今天看了教程的第三章...是关于授权的......和以前一样.....自己也研究了下....我觉得看那篇教程怎么说呢.....总体上是为数不多的精品教程了吧....但是有些地方确实是讲的太少了.... ...

  8. UWP学习记录12-应用到应用的通信

    UWP学习记录12-应用到应用的通信 1.应用间通信 “共享”合约是用户可以在应用之间快速交换数据的一种方式. 例如,用户可能希望使用社交网络应用与其好友共享网页,或者将链接保存在笔记应用中以供日后参 ...

  9. UWP学习记录11-设计和UI

    UWP学习记录11-设计和UI 1.输入和设备 通用 Windows 平台 (UWP) 中的用户交互组合了输入和输出源(例如鼠标.键盘.笔.触摸.触摸板.语音.Cortana.控制器.手势.注视等)以 ...

随机推荐

  1. 人人都是 DBA(II)SQL Server 元数据

    SQL Server 中维护了一组表用于存储 SQL Server 中所有的对象.数据类型.约束条件.配置选项.可用资源等信息,这些信息称为元数据信息(Metadata),而这些表称为系统基础表(Sy ...

  2. 利用avalon 实现一个简单的成绩单

    本文的灵感是来自Halower的这篇博文,他是使用knockout与jQuery实现的.不过我觉得MVVM本来就强大的事件绑定功能,因此用jQuery 是多此一举.另,他也用了一些面向对象的写法.我个 ...

  3. 由一篇文章引发的思考——多线程处理大数组

    今天领导给我们发了一篇文章文章,让我们学习一下. 文章链接:TAM - Threaded Array Manipulator 这是codeproject上的一篇文章,花了一番时间阅读了一下.文章主要是 ...

  4. Tomcat-MAC下添加Tomcat环境并运行

    MAC下添加Tomcat环境运行 1. 首先,下载tomcat.http://tomcat.apache.org/index.html 2. 然后解压.用终端进入到解压文件夹下的bin目录.  ...

  5. 青蛙的约会 java版

    参考http://blog.csdn.net/polossk/article/details/9799735 package acm; public class FrogDate { public s ...

  6. 浅谈敏捷组织中PMO的人物

    所谓的"敏捷组织"其实并没有标准的形式,而且PMO(项目办理单位)并没有一个标准的人物界说.有一个十分遍及的误解,公司在挑选"灵敏"或许"瀑布&quo ...

  7. 缓存篇(Cache)~第三回 HttpModule实现网页的文件级缓存

    返回目录 再写完缓存篇第一回之后,得到了很多朋友的好评和来信,所以,决定加快步伐,尽快把剩下的文章写完,本篇是第三回,主要介绍使用HttpModule实现的文件级缓存,在看本文之前,大家需要限度Htt ...

  8. EF架构~DefaultValue让我的UnitOfWork更可读

    回到目录 在编程世界里,使用“否定式”不是一件好事,因为它的可读性并不高,但有时,为了让使用者减少代码量,还是使用了双重否定,直到DefaultValue的出现,它改变了这一切,它可以为你的属性设置你 ...

  9. Liferay7 BPM门户开发之44: 集成Activiti展示流程列表

    处理依赖关系 集成Activiti之前,必须搞清楚其中的依赖关系,才能在Gradle里进行配置. 依赖关系: 例如,其中activiti-engine依赖于activiti-bpmn-converte ...

  10. px 与 dp, sp换算公式?

    PPI = Pixels per inch,每英寸上的像素数,即 "像素密度" xhdpi: 2.0 hdpi: 1.5 mdpi: 1.0 (baseline) ldpi: 0. ...