Ajax传统操作
JavaScript:
----------array: object
定义: var obj= [1, 2, 3, 4]; // 等价于 var obj= new Array(1, 2, 3, 4);
----------Json: object
js里面,有一种特殊的对象,就是Json,可以看做一种特殊的Map(仅方便联想)
var data = {"uid":"uuid","username":"xt","sex":"男","password":"123456"};
-------------基于对象的使用: data.uuid==========>data["uuid"] 前台去处理Json
----------------------------------------------------------->ajax使用
传 json 得到json
controller-------------->前台界面(显示数据) ===================》局部刷新界面,而不是整个界面
Ajax操作分为四步走:两种请求方式 post,get
1)获取XMLHttpRequest
fucntion craeteXMLHttpRequest(){
try{
return new XMLHttpRequest();
}catch(e){
try{
return new ActiveXObject("Microsoft.XMLHTTP")
}catch(e){
try{
return new ActiveXObject("msxml2.XMLHTTP")
}catch(e){
throw e;
}
}
}
var xmlHttpRequest = new craeteXMLHttpRequest();
2)打开窗口(如咱们一般访问浏览器)
xmlHttpRequest.open("Get","<c:url value='/xt?action=hello&xt=aaa'/>",true); ------》get
xmlHttpRequest.open("POST","<c:url value='/product.do?action=checkByPid'/>",true); ---->post 要设置请求头
xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
<c:url value='/xt?action=hello&xt=aaa'/> ------------->也可以是一般文本文件
3)浏览器里面输入数据(send)
xmlHttpRequest.send(null)------------->get
xmlHttpRequest.send("username"+username)------------->post
4)浏览器回应
xmlHttpRequest.onreadystatechange = function(){
if(xmlHttpRequest.readyState==4 &&xmlHttpRequest.status == 200){
var text = xmlHttpRequest.responseText; //类型text,一般可以接收str
var data = JSON.parse(text); // eval("(" +data+ ")") 两种解析方式
var xml = xmlHttpRequest.responseXML; //xml str为xml形式
};
后台 bean------------》json给前台
package cn.transfer.test; import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.TreeMap; import net.sf.json.JSONArray;
import net.sf.json.JSONObject; import org.junit.Test; public class TestJson {
/*
* 当map来用
*/
@Test
public void fun1() {
JSONObject map = new JSONObject();
map.put("name", "zhangSan");
map.put("age", 23);
map.put("sex", "male"); String s = map.toString();
System.out.println(s); System.out.println("----------------------------");
Map<String,Object> map2 = new TreeMap<String, Object>();
map2.put("age", 12);map2.put("name", "LiSi");map2.put("sex", "男");
System.out.println(map2.toString().replace("=", ":"));//{sex=男, name=LiSi, age=12}
} @Test
public void beanToJson(){
Person person = new Person("LiSi", 12, "男");
//对象转换为json
JSONObject map = JSONObject.fromObject(person);
System.out.println(map.toString());
} /**
* JSONArray
*/
@Test
public void fun3() {
Person p1 = new Person("zhangSan", 23, "male");
Person p2 = new Person("liSi", 32, "female"); JSONArray list = new JSONArray();
list.add(p1);
list.add(p2); System.out.println(list.toString());
} /**
* 原来就有一个List,我们需要把List转换成JSONArray
*/
@Test
public void fun4() {
Person p1 = new Person("zhangSan", 23, "male");
Person p2 = new Person("liSi", 32, "female");
List<Person> list = new ArrayList<Person>();
list.add(p1);
list.add(p2); System.out.println(JSONArray.fromObject(list).toString());
} @Test // 数组--------------<>JSON
public void fun5() {
Person p1 = new Person("zhangSan", 27773, "male");
Person p2 = new Person("liSi", 32, "female");
Person[] p = {p1,p2}; System.out.println(JSONArray.fromObject(p).toString());
} @Test // String------------>JSON
public void fun6() { JSONObject map = new JSONObject();
map.put("name", "zhangSan");
map.put("age", 23);
map.put("sex", "male");
Person obj = (Person) JSONObject.toBean(map, Person.class);
System.out.println(obj.toString() );
}
}
Ajax传统操作的更多相关文章
- ajax 中操作this,需要先在ajax的外面给this重新定义为_this!!
//设置为默认收货地址 $(document).on('tap','.right_none',function(){ var _this = $(this); //只有这样定义,在ajax的内部才可以 ...
- Ajax-04 jQuery Ajax 常用操作
jQuery jQuery 其实就是一个JavaScript的类库,其将复杂的功能做了上层封装,使得开发者可以在其基础上写更少的代码实现更多的功能. jQuery Ajax a.概述 jQuery 不 ...
- JQuery中Ajax的操作
JQuery Ajax异步操作的方式: $.ajax,$.post, $.get, $.getJSON. 一, $.ajax,这个是JQuery对ajax封装的最基础步,通过使用这个函数可以完成异 ...
- Ajax 数据库操作
为了清楚的说明使用 Ajax 从数据库中存取信息有多么容易,我们要构建一个 MySQL 查询,然后把结果显示在ajax.html 上.但是在我们开始之前,让我们先做一些基础工作.使用下面的命令创建一个 ...
- Ajax 传统的异步登陆
这是一个传统的异步登陆,利用Ajax实现的,主要代码如下: 客户端代码: var http; function Button1_onclick() { if (window.ActiveXObject ...
- ajax常用操作
load的方法的使用(现在已不常用) <!doctype html><html lang="en"><head> <meta charse ...
- AngularJS入门教程之与服务器(Ajax)交互操作示例
AngularJS从Web服务器请求资源都是通过Ajax来完成,所有的操作封装在$http服务中,$http服务是只能接收一个参数的函数,这个参数是一个对象,用来完成HTTP请求的一些配置,函数返回一 ...
- ajax 简单操作
<script> $(function () { //$("#send").click(function () { // $.get("JQuery.as ...
- jQuery(九)、ajax对象操作
1 数组和对象操作 1.jQuery.extend([deep,] target, object1, [objectN]) 用一个或多个其他对象来扩展一个对象,返回被扩展的对象. 如果不指定targe ...
随机推荐
- pthread多线程编程
http://blog.csdn.net/onlyou930/article/details/6755593 http://blog.csdn.net/ithomer/article/details/ ...
- Android调试之Logcat
转贴 http://www.cnblogs.com/adison/p/4264284.html 在Android开发过程中,总免不了要调试,无论是Debug,还是Android自带的Logcat,抑 ...
- 学会使用postman工具模拟请求-----待补充
登录: backstop 密码:backstop的密码 记得加上header,在swagger中有content-type. 请求,则是api下对应的请求. get请求直接加入链接即可. post请求 ...
- python sort、sorted、reverse、reverd的区别
sort.sorted.reverse.reversed的区别 !!! error 首先应该区分的是,sort和reverse是列表的一个方法.字符串.元组.字典.集合是没有这两个方法的.而sorte ...
- 常用Git命令清单
我现在工作几乎每天都使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用 ...
- PostgreSQL 设置主键的序列值
1. 问题的提出 PostgreSQL定义TABLE时,主键的字段类型可以设定为自增类型serial,即插入每条记录时,主键的值自动加1.但是,当插入数据的时候指定了具体的主键值,例如主键值从0到50 ...
- Web Api 测试工具
1.调用POST方法:使用Chrome流量器的PostMan工具. 前端模拟发送数据/调试的好工具:Chrome下的Postman-REST Client 下载地址 https://chrome.go ...
- jQuery到Vue的迁移之路
背景 在前段时间做了L10的某个超复杂超多坑的三端专题之后,组里的小伙伴们一致认为是时候想办法统一一下组里的开发模式了.因为用nie那一套jQuery/zepto(下文jQuery默认包括zepto) ...
- HBase - 伪分布式安装过程
环境 - hadoop - 没有zookeeper(用hbase自带的zookeeper,当然后期我会改用独立的zookeeper) HBase介绍 参考:hbase是什么? hbase下载 地址:h ...
- UI界面相关
在开发中有些控件或者控件显示的属性需要经常设置,但是又是万变不离其中,经常写着一样的代码会显得冗余,不利于阅读.这里做了简化. 1.UI控件 2.颜色管理 3.图片管理 4.字体选择