Ajax不是值一种单一的技术,而是有机的利用了一系列的交互式网页应用相关的技术所形成的的结合体。它的出现,解开了无刷新更新网页的新时代,并代替传统的Web方式和通过隐藏的框架来进行异步提交的趋势,是web开发的里程碑

php  

定义变量  $num=10;  定义同时可以赋值

如何打印内容

echo 需要打印的内容;

注意:在后端编写的代码不能直接运行,只能放到服务器对应的文件夹下,通过服务器运行。

如何通过服务器运行:通过ip地址找到服务器对应的文件夹下,然后再找对应的文件运行。

在php中如何定义数组?

$str=array[1,2,3];   注意echo不能够输出数组

 

 

6.5.1    load()方法

1.载入HTML方法

结构:load(url  [ , data] [,callback])

url:  请求HTML页面的URL地址

data (可选):  发送至服务器的key/Value 数据

callback(可选):请求完成时的回调函数,无论请求成功或者失败

$("#id").load("text.heml")

2筛选载入的HTML文档 

进一步修改load中的“      +更详细id”

3传递方式:

load()方法的传递方式根据参数data来自动指定。如果没有参数传递则采用GET方式传递,反之,则会自动转换为POST方式

4回调函数callback

6.5.2$.get()方法   和$.post()方法

实现将参数传递给服务器页面    两种方法是全局函数。

1.get()使用GET方式进行异步请求 

结构为:$.get(url [,data],[,callback]  [,type])

type(可选)  服务器端返回内容的格式,包括xml  html   script    json   text    default

 

json文件

出现的原因多半是XML文档体积大和难以解析。Json文件和XML文档一样,json文件非常简洁,而且容易阅读

json的格式非常严格,构建的json文件必须完整无误,任何一个括号不匹配或者缺少逗号,都会导致页面上的脚本终止运行,甚至会带来其他更加严重的负面影响。

2$.post()方法

与$.get()方法之间有区别

1get请求会将参数跟在URL后进行传递,而post请求则是作为http消息的实体内容发送给web服务器,在ajax请求中,这种区别对用户是不可见的。

2  GET方式对传输的数据有大小限制(通常不能大于2KB),而使用POST方式传递的数据量比GET方式大

3GET方式请求的数据会被浏览器缓存起来,因此其他人就可以从浏览器的历史记录中读取这些数据

4GET方式和POST方式传递的数据在服务器端的获取也不相同。在php中,GET方式的数据可以用$.get()获取,而POST方式可以用$.post获取,两种方式都可以用$_REQUEST[]来获取

6.5.3$getScript()方法和$.getJson()方法

1.$.getScript()

有时候,在页面初次加载时就获取所需的全部JS文件是没有必要的,因此jquery提供了$.getscript()方法来直接加载js文件,与加载一个HTML片段一样简单,并且不需要对js文件进行处理,js文件会 自动执行

$(function(){

  $('#send').click(function(){

  $.getScript("test.js");

})

})

2.  $.getJSON()方法用于加载JSON文件,与$.getScript()方法的用法相同

$(function(){

  $('#send').click(function(){

  $.getJson("test.json");

})

})

6.5.4  $.ajax()方法

是jquery最底层的Ajax实现

结构为$.ajax(option)

该方法只有一个参数,但是在这个对象里包含了$.ajax()方法所需要的请求设置以及回调函数等信息。参数以key/value的形式存在

所有参数都是可选的

 

 

 

 

6.6序列化元素

1.serialize()方法、

做项目的过程中,需要用到表单,经常用来提供数据,如注册和登录。常规的方法是使表单提交到另个一个页面,整个浏览器页面都会被刷新,而ajax技术则能够异步提交 表单,并将服务器返回的数据显示在当前的页面上

$("#send").click(function(){

  $.get("get.php",$('#form1').serialize(),function(data,textStatus){

  $("#resText").html(data);

})

})

使用serialize()方法可以省略了前面的不断提示

serialize()方法用于Jquery对象,所以不光只有表单能使用它,其他选择器选取的元素也能适使用它

$(“:checkbox.:radio”).serilization();

把单选框课复选框的值序列化为字符串形式,只会将选中的值序列化

2serlizeArray()方法

该方法不是返回字符串,而是将DOM元素序列化之后,返回Json格式数据

var fields=$(":CheckBox,:radio").serialoizeArray();

console.log(field);  //用Firbug输出   可以在Firebug中查看该对象

serialozitionArray()可以使用$.each()函数进行迭代输出

3$.param()方法   用来对一个数组或者对象按照key/value 进行序列化

var obj={a:1,b:2,c:3};

var k=$.param(obj);

alert(k);  //输出a=1&b=2&c=3

6.7 jquery中的Ajax全局事件

jquery简化ajax操作不仅通过调用Ajax方法和处理响应方面,还体现在对调用函数Ajax方法的过程中HTTP请求控制。

通过jquery提供的一些自定义的全局函数,能够为各种与ajax相关事件注册回调函数。

在使用ajax进行请求时,可以设置一些提示和反馈信息,以免用户对其失去信心

 

jquery的Ajax全局事件中还有几种方法,也可以使用Ajax方法的过程中为其带来方便

AjaxComplete(callback)   ajax请求完成时执行的函数

ajaxError(callback)      请求发生错误的时候执行的函数,捕捉到的错误可以作为最后一个参数传递

ajaxSend(callback)    请求发送前执行的函数

ajaxSuccess(callback)   请求成功时候执行的函数

 

如果希望某个ajax请求不受全局方法的影响,可以使用$.ajax(option)方法时,将参数中的global设置为false,

$.ajax({

  url :"test.html";

  global:false;   //不触发全局ajax事件

})