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. centos 6.5 X64 安装 mongodb 2.6.1 (笔记 实测)

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G) 系统版本:Centos-6.5-x86_64 *** Centos编译安装mongodb 2.6 系统最好是64位的,才 ...

  2. javascript 设计模式-----观察者模式

    观察者模式在设计模式中被重点提到,因为它应用的场景非常多,而且在模块化设计当中扮演着非常重要的角色.MVC模式中最底层的就是观察者模式,当下流行的javascript框架backbone就是很好地运用 ...

  3. ENode 2.0 - 整体架构介绍

    前言 今天是个开心的日子,又是周末,可以轻轻松松的写写文章了.去年,我写了ENode 1.0版本,那时我也写了一个分析系列.经过了大半年的时间,我对第一个版本做了很多架构上的改进,最重要的就是让ENo ...

  4. 使用C#设计Fluent Interface

    我们经常使用的一些框架例如:EF,Automaper,NHibernate等都提供了非常优秀的Fluent Interface, 这样的API充分利用了VS的智能提示,而且写出来的代码非常整洁.我们如 ...

  5. 必应词典UWP版-开发小结

    摘要 必应词典UWP版已经上线2周了!相信有不少用户都已经体验过了吧!得益于Win10全新.强大的API,新版词典在性能上.UI体验上都有了大幅的提升,今天,小编就为大家讲讲必应词典UWP开发的故事. ...

  6. [.net 面向对象编程基础] (12) 面向对象三大特性——继承

    [.net 面向对象编程基础] (12) 面向对象三大特性——继承 上节我们说了面向对象的三大特性之一的封装,解决了将对同一对象所能操作的所有信息放在一起,实现统一对外调用,实现了同一对象的复用,降低 ...

  7. Cassandra中的数据一致性

       Cassandra中数据一致性指的是数据行在各个复制节点(replicas)上的更新和同步程度.通过提供tunable consistency,Cassandra扩展了eventual cons ...

  8. 深入CSS,让网页开发少点“坑”

    通常我们在学习CSS的时候,感觉语法很容易掌握,实际应用中却碰到各式各样难以填补的“坑”,为避免大家受到同样的困惑与不解,本文详细讲解了CSS中优先级和Stacking Context等高级特性.让你 ...

  9. Laravel5.0学习--02 实例进阶

    本文以laravel5.0.22为例. 本节以新建一个简单的博客作为实例. 准备工作 数据库配置 .env文件(也可以直接修改config/database.php) DB_HOST=localhos ...

  10. Atitit js版本es5 es6新特性

    Atitit js版本es5 es6新特性 Es5( es5 其实就是adobe action script的标准化)1 es6新特性1 Es5( es5 其实就是adobe action scrip ...