Aajx
# Ajax入门及基本开发 ##
# Ajax的基本概念
>> 概念;
界面异步传输技术;
将几种技术和在一起进行开发的一种编程方式;
>> 基本应用场景;
> Google Suggest
> Gmail
> Google Map
# Ajax的开发步骤;
>> 创建XMLHttpRequest对象;
>> 将状态触发器绑定到一个函数;
>> 使用open函数建立与服务器的链接;
>> 向服务器端发送数据;
>> 在回调函数中对返回数据进行处理;
# 简单示例;
>> 简单的弹框操作;
// 创建XMLHttpRequest对象;
<script type="text/javascript">
function createXMLHttpRequest()
{
var xmlHttp;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
alert("您的浏览器不支持AJAX!");
return false;
}
}
}
}
</script>
// 将状态触发器绑定到一个函数;
var xmlHttp= createXMLHttpRequest();
xmlHttp.onreadystatechange= function(){
// 在回调函数中对返回数据进行处理;
if(xmlHttp.readyState==4){
if(xmlHttp.status==200){
//具体代码;
alert(xmlHttp.responseText);
//在客户端显示结果;
}
}
};
// 使用open函数建立与服务器的链接;
xmlHttp.open("GET","提交的地址,注意跟上应用名",true);
// 向服务器端发送数据;
xmlHttp.send(null);
//POST方式提交数据;
xmlHttp.open("POST","提交的地址,注意跟上应用名",true);
xmlHttp.setRequsetHeader("Content-Type","application/x-www-from-urlencoded");
xmlHttp.send("username=XXX& age=10");
>> 创建一个Servlet
response.setContentType("text/html;charset=UTF-8);
String username= request.getParameter("username");
username= new String(username.getByte("iso-8859-1"),"UTF-8");
syso(username);//服务端返回结果;
//post提交数据的代码;
requset.setCharacterEncoding("UTF-8");
String username= request.getParameter("username");
response.getWriter().write("xxxx");
# Ajax的优化
因为返回数据冗余过多,考虑通过优化格式的方式来进行数据返回;
>> JSON数据格式;
|-- 一种轻量级的数据格式,容易阅读且解析方便;
|-- 基本格式;
> <script>
var student= {"name":"cgx","age":"20"}; //JSON字符串;
alert(students.name+" --- "+students.age);
var students= [ {"name":"cgx","age":"20"}, {"name":"aj","age":"18"}];
alert(students[0].name+" --- "+student[0].age);
//JSON数据格式的数组;
</script>
|-- 使用方式;
> 有个JSON-lib的小型插件
|-- 具体方式;
> JSONArray json= JSONArray.fromObject(Object[] obj);
//对于数组和list集合的转换;
> JASONObject json2= JASONObject.fromObject(Object obj);
//对于单个元素或者Bean 的转换;
Aajx的更多相关文章
- Aajx调用千千音乐数据接口
前端展示截图https://images.cnblogs.com/cnblogs_com/LiuFqiang/1429011/o_D09Q55)EL1VFEIJ(GKI%7D%7DY5.png < ...
- EasyUI+MVC+EF简单用户管理Demo(问题及解决)
写在前面 iframe-src EntityFramework版本 connectionStrings View.Action.页面跳转 EasyUI中DataGrid绑定 新增.修改和删除数据 效果 ...
- 研究base64_encode的算法
从网上看了一些资料,为了方便自己理解,于是把它的编码原理,自己放在excel表格中清晰列出来,方便以后查阅.做的图如下:
- Ajax实例
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Index.aspx.cs& ...
- 新浪微博SSO登陆机制
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- Highcharts简介
最近要做一个油田油压或温度数据的监控软件,数据会秒级写到数据库中,界面上需要动态展示数据跟随时间变化. 在网上找了很多js插件,希望能够即时高效的展示数据,最终确定了使用Highcharts插件. H ...
- WPF应用程序支持多国语言解决方案
原文:WPF应用程序支持多国语言解决方案 促使程序赢得更多客户的最好.最经济的方法是使之支持多国语言,而不是将潜在的客户群限制为全球近70亿人口中的一小部分.本文介绍四种实现WPF应用程序支持多国语言 ...
- 第一百二十七节,JavaScript,JSON数据类型转换,数据转换成字符串,字符串转换成数据
第一百二十七节,JavaScript,JSON数据类型转换,数据转换成字符串,字符串转换成数据 学习要点: 1.JSON语法 2.解析和序列化 前两章我们探讨了XML的结构化数据,但开发人员还是觉得这 ...
- java_web学习(16)Ajax
Ajax Ajax(Asynchronous JavaScript and XML的缩写),允许浏览器与服务器通信而无须刷新当前页面的技术都被叫做Ajax. Ajax:一种不用 ...
随机推荐
- MySQL数据库高可用集群搭建-PXC集群部署
Percona XtraDB Cluster(下文简称PXC集群)提供了MySQL高可用的一种实现方法.集群是有节点组成的,推荐配置至少3个节点,但是也可以运行在2个节点上. PXC原理描述: 分布式 ...
- 视觉SLAM算法框架解析(2) ORB-SLAM
版权声明:本文为博主原创文章,未经博主允许不得转载. ORB-SLAM[1]完全继承了PTAM(http://www.cnblogs.com/zonghaochen/p/8442699.html)的衣 ...
- tp3中子查询 逻辑条件是or
直接用写sql最快 $map['_string'] = 'status=1 AND score>10'; //子查询条件字段不同 $condition['platform'] = 'swap'; ...
- Descriptive Measures for Populations|Parameter|Statistic|standardized variable|z-score
3.4 Descriptive Measures for Populations; Use of Samples For a particular variable on a particular p ...
- Rearrangement
In a two dimensional array of integers of size 2×n2 \times n2×n, is it possible to rearrange integer ...
- Git教程 - 远程仓库
到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了. 可是有用过集中式版本控制系统SVN的童鞋会站出来说,这些功能在SVN里早就有了,没看出Gi ...
- Tricks of Android's GUI
Tricks of Android's GUI */--> Tricks of Android's GUI 1 layoutweight In LinearLayout, the default ...
- JS替换变量中的文字字母
var text='Hello world, Hello world'; var b= text.replace('world','zhengxiaoya'); // 找到字符串中的第一个'world ...
- 收集到的技术相关网址——python
1.Python中常用数据库访问接口模块 专用数据库连接模块——MySQL.SQLite.PostgreSQL.Oracle.IBM DB2.Infomix.Interbase.Sybase.SQL ...
- jquery框架概览(一)
参照jQuery 2.0.3版本(http://files.cnblogs.com/files/snoy/jquery-2.0.3.js")来进行的源码分析 从代码的最外层可以看到是一个II ...