AJAX基础原理
1.首先,AJAX是什么?
它的全称是Asynchronous JavaScript and XML (翻译过来是异步的JavaScript 和 XML )
它是一门前后端的通信技术,不是语言,这一技术无需刷新页面就可以从服务器取得数据,意思就是可以局部刷新,无需加载整个网页,用户体验非常好
2.AJAX的原理是什么?
简单来说,通过XMLHttpRequest对象来向服务器发送异步请求,从服务器获得数据,然后用js来操作dom而更新页面。这其中最最关键也最最重要的一步就是从服务器获得请求数据,所以我们先了解一下XMLHttpRequest
3.XMLHttpRequest对象
XMLHttpRequest是AJAX的基础。XMLHttpRequest用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。而传统的网页(不使用AJAX)如果需要更新内容,必须重载整个网页。
创建XMLHttpRequest对象
语法:Variable = new XMLHttpRequest();
4.GET还是POST?
与POST相比,GET更简单也更快,并且在大部分情况下都能用。然而,在以下情况中,请使用POST请求:
(1)无法使用缓存文件(更新服务器上的文件或数据库)
(2)向服务器发送大量数据(POST没有数据流限制)
(3)发送包含未知字符的用户输入时,POST比GET更稳固也更可靠
Ajax代码
$.ajax({
url:"bookAction", //请求的地址
type:"post", //请求方式POST/get
success:function(data){ //success表示成功的请求和响应
var li= eval("("+ data +")")
$.each(li, function(index,element){
console.log(element);
html1 = html1 + "表列名"});
$("#tab1").html(html1)
JqueryAjax插件
$.fn.extend({
"bgcolor":function(options){
options = options||{};
var defaults = {
headCss : "head",
overCss : "over",
outCss : "out"
};
//$.extend(defaults,options);
return this.each(function(){
$('tr:eq(0)',this).addClass(defaults.headCss);
$('tr:gt(0)',this).removeClass().hover(
function(){
$(this).removeClass().addClass(defaults.overCss);
},
function(){
$(this).removeClass().addClass(defaults.outCss);
}
);
});
}
});