what is ajax ?

AJAX = 异步 JavaScript 和 XML。

AJAX 是一种用于创建快速动态网页的技术。

通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。

有很多使用 AJAX 的应用程序案例:新浪微博、Google 地图、开心网等等。

例子1-跨域请求

跨域请求的要求请看下面:

你的web页面的js代码必须满足以下2点要求:

  1. 发送格式必须是jsonp。
  2. 函数名:告诉对方用什么函数名来返回数据,通过jsonCallback来设置。

服务器端的要求:

  1. 返回的数据必须是这样的格式:函数名("OK"),比如list(jsonp),这个函数名是双方协商的。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>ajax跨域</title>
</head>
<body>
<input value="获取节目" type="button" onclick="ajaxrequest()">
<div id="content"></div>
<script src="jquery-2.2.3.js"></script>
<script type="text/javascript">
function ajaxrequest() {
$.ajax({
url:"http://www.jxntv.cn/data/jmd-jxtv2.html?callback=list&_=1454376870403", // 定义要和哪个url交互数据 type:'GET', // 定义使用什么方法向服务器发送请求
dataTyep:"jsonp", // jsonp是说我请求数据的时候会告诉服务器,返回数据的时候要使用我给你的函数名去包裹数据
jsonp:'callback', // 对方根据这个键来取值,请看下面
jsonCallback:'list', // 服务器返回数据的时候使用,告诉我们的ajax去用什么函数名解析数据
// callback + list就等于 (callback:list) 这样的键值对。这样对方直接根据callback来取值了。
sucess: function (data) { // 执行成功调用这个方法,方法内容自定义
$.each(date.date,function(i){
var item = data.data[i];
console.log(item);
var str = "<p>" + item.week +"</p>>";
})
},
error: function (data) { // 执行失败调用这个方法,方法内容自定义
alert("have some error!!")
}
})
}
</script>
</body>
</html>

例子2-本域的ajax例子

// 完整的ajax例子
function get_status_usage(){
disk_data = [];
$.ajax({
url: "{% url 'get_status_data'%}",
type: 'POST',
dataType: 'json',
data: {'host_id':$('#host_id').text()},
success: function(callback){ // 自定义函数内容了,我这里的你可以忽略。
console.log(callback);
callback_copy = callback
if( callback.disk_usage_a_hour){
for(disk in callback.disk_usage_a_hour){
disk_data.push(callback.disk_usage_a_hour[disk])
}
}
console.log('disk_data',disk_data);
return disk_data
}, // end sucess func
error: function(err_info){
alert('error:',err_info)
}
}); // end ajax
}

8 HTML&JS等前端知识系列之Ajax的例子的更多相关文章

  1. 9 HTML&JS等前端知识系列之Ajax post请求带有token向Django请求

    我们 在母板上写入这段代码: <script type="text/javascript"> // 个人定义大函数,不是重点,可以忽略 $(document).read ...

  2. 3 HTML&JS等前端知识系列之javascript的基础

    preface 作为一名运维开发,必须懂得前端知识,比如javascript,dom等等,下面就聊聊javascript. include 数据格式 条件判断,循环流程等. 函数 面向对象 what ...

  3. 8 HTML&JS等前端知识系列之jquery的自定义方法

    preface 有时候我们在前端写jquery的时候,会自己自定义些方法,这样可以不需要重复造轮子.先说说2种自定义方法的区别: 不跟在选择器后面的 跟在选择器后面的. 那下面说说如何自定义jquer ...

  4. 5 HTML&JS等前端知识系列之jquery基础

    preface jquery其实就是对javascript的再次封装,方便我们开发者调用,下载地址是:http://jquery.com/download/ ,下面就说说常用使用方法 选择器 基本选择 ...

  5. 4 HTML&JS等前端知识系列之Dom的基础

    preface 主要聊聊dom的编程,包含下面的内容: what's the dom dom选择器 innerText 替换或写入文本 value 获取input,select,textarea的值 ...

  6. 7 HTML&JS等前端知识系列之jquery的事件绑定

    preface 我们知道,每一个a,input等等标签都可以为其绑定一个事件,onclick也好,focus 也罢,都可以绑定的.但是众神key想过这个问题没有,倘若这里有1000个input标签需要 ...

  7. 大前端技术系列:TWA技术+TensorFlow.js => 集成原生和AI功能的app

    大前端技术系列:TWA技术+TensorFlow.js => 集成原生和AI功能的app ( 本文内容为melodyWxy原作,git地址:https://github.com/melodyWx ...

  8. JS前端知识模块大全

    公司前端:小胖提供,表示感谢 1. 基础 HTML, CSS, JS 文档 W3CSCHOOL: http://www.w3schools.com/ MDN: https://developer.mo ...

  9. 前端知识复习: JS选中变色

    前端知识复习:JS选中变色 上篇文章 :前端知识复习:Html DIV 图文混排(文字放在图片下边) Js选中图片效果 <!DOCTYPE html> <html xmlns=&qu ...

随机推荐

  1. SQLite学习笔记(六)&&共享缓存

    介绍 通常情况下,sqlite中每个连接都会一个独立的pager对象,pager对象中管理了该连接的缓存信息,通过pragma cache_size指令可以设置缓存大小,默认是2000个page,每个 ...

  2. C++基础——模拟事务 (2)Composite模式

    =================================版权声明================================= 版权声明:原创文章 禁止转载  请通过右侧公告中的“联系邮 ...

  3. C# DESC加密

    DESC加密方法 直接上代码: 1.加密 /// <summary> /// 加密 /// </summary> /// <param name="obj&qu ...

  4. 更改CentOS7的yum更新源

    1. 备份现有源: mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak 2.下载163源 wget h ...

  5. [WPF系列]-高级部分 需要区分的东东

    ContentControl VS ContentPresenter What's the difference between ContentControl and ContentPresenter ...

  6. 如何利用excel中的数据源制作数据地图

    关于这个问题,制作数据地图的方法已不新奇,总体来说有这么几类方案: 一类方案:直接在excel里制作 优势:个人小数据量应用较为方便简单 缺点:需要熟悉VBA,且更强大的功能对VBA水平要求较高 1. ...

  7. css3属性-webkit-font-smoothing

    对字体进行抗锯齿渲染可以使字体看起来会更清晰舒服.在图标字体成为一种趋势的今天,抗锯齿渲染使用也越来越多. font-smoothing是非标准的CSS定义.它被列入标准规范的草案中,后由于某些原因从 ...

  8. UVA数学入门训练Round1[6]

    UVA - 11388 GCD LCM 题意:输入g和l,找到a和b,gcd(a,b)=g,lacm(a,b)=l,a<b且a最小 g不能整除l时无解,否则一定g,l最小 #include &l ...

  9. java Socket编程-基于UDP

    package com.wzy.UDPTest; import java.net.DatagramPacket; import java.net.DatagramSocket; import java ...

  10. selenium自动化-java-封断言类2

    封装断言类 package streamax.com; import java.util.ArrayList; import java.util.List; import org.testng.Ass ...