后端程序员如何玩转AJAX
1.原生的Ajax入门 (感觉很是繁琐,所以一般我们都是用简单的方式)
- 创建一个核心对象 XMLHttpRequest
var xmlhttp;
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
} else {// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} - 编写一个回调函数
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
//xmlhttp.responseText;
//这里可以对返回的数据进行处理
}
} - 编写请求方式和请求的路径(open操作)
xmlhttp.open("GET", "${pageContext.request.contextPath}/ajax1", true); - 发送请求(send操作)
xmlhttp.send();
- 入门案例演示
- 前端页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>AJAX</title>
</head>
<body>
<button onclick="yuansheng()">点我一下</button>
</body>
<script type="text/javascript">
function yuansheng() {
var xmlhttp;
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
} else {// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
//xmlhttp.responseText;
alert(xmlhttp.responseText);
}
}
xmlhttp.open("GET", "${pageContext.request.contextPath}/ajax1", true);
xmlhttp.send(); }
</script>
</html> - Servlet页面
package ajax; import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; @WebServlet("/ajax1")
public class YuanshengAjax extends HttpServlet {
private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
System.out.println("点我了一下");
response.getWriter().print("hello");
} protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
} }
- 前端页面
2.Jquery发送Ajax (记得导入jquery.js)
- 方式一:jquery对象.load(url,params,function(数据){});
$("#feeds").load("feeds.html"); - ★★★方式二:$.get(url,params,function(数据){},type);
function jqget() {
$.get("${pageContext.request.contextPath}/jsget", {
"hello" : "hellovalue"
}, function(data) {
alert(data);
},type="json"); } - ★★★方式三:$.post(url,params,function(数据){},type);
function jqpost(){
$.post("${pageContext.request.contextPath}/jspost", {
"hello" : "hellovalue"
}, function(data) {
alert(data);
},type="json");
} - 方式四:$.ajax([选项]);
$.ajax({ url: "test.html", context: document.body, success: function(){
$(this).addClass("done");
}});
3.Jquery发送Ajax如何发送数据
- $.get(url,params,function(数据){},type);
- params:请求的参数 参数为key\value的形式 key=value {"":"","":""}
- $.post(url,params,function(数据){},type);
- params:请求的参数 参数为key\value的形式 key=value {"":"","":""}
4.Jquery发送的Ajax如何接受数据
- 在使用Ajax发送Ajax的时候我们可以在我们可以通过指定type的值来设置返回数据的格式
- type:返回内容格式,xml, html, script, json, text, _default。 我们经常在开发中使用"json"
- 如果后台返回的数据为json格式我们如何获取呢?
function jqget() {
$.get("${pageContext.request.contextPath}/jsget", {
"hello" : "hellovalue"
}, function(data) {
var j = eval(json);
alert(j.username)
},type="json"); }
后端程序员如何玩转AJAX的更多相关文章
- 后端程序员必备的 Linux 基础知识
1. 从认识操作系统开始 正式开始 Linux 之前,简单花一点点篇幅科普一下操作系统相关的内容. 1.1. 操作系统简介 我通过以下四点介绍什么是操作系统: 操作系统(Operating Syste ...
- 写给后端程序员的HTTP缓存原理介绍
There are only two hard things in Computer Science: cache invalidation and naming things. -- Phil Ka ...
- 科普,想成为厉害的 Java 后端程序员,你需要懂这 13 个知识点
老读者就请肆无忌惮地点赞吧,微信搜索[沉默王二]关注这个在九朝古都洛阳苟且偷生的程序员.本文 GitHub github.com/itwanger 已收录,里面还有我精心为你准备的一线大厂面试题. 站 ...
- 科普,想成为厉害的 Java 后端程序员,你需要懂这些
站在运筹帷幄的角度来看,一名厉害的 Java 后端程序员都需要懂得哪些知识呢?我想,这也是很多读者迫切想知道的一个问题,因为如果不站在一个宏观的角度的话,所有学过的知识点都是零散的,就感觉像一只迷路的 ...
- Angular学习资料大全和常用语法汇总(让后端程序员轻松上手)
前言: 首先为什么要写这样的一篇文章呢?主要是因为前段时间写过一些关于Angualr的相关实战文章,有些爱学习的小伙伴对这方面比较感兴趣,但是又不知道该怎么入手(因为认识我的大多数小伙伴都是后端的同学 ...
- 后端程序员实现一个IP归属地的小程序
在日常开发中,后端主要提供数据以及处理业务逻辑,前端主要提供页面布局以及数据展示.后端程序员对于页面布局接触比较少,但是小程序有完善的文档说明.页面布局也相对简单,实现起来相对简单一些.而且小程序相对 ...
- Java后端程序员都做些什么?
这个问题来自于QQ网友,一句两句说不清楚,索性写个文章. 我刚开始做Web开发的时候,根本没有前端,后端之说. 原因很简单,那个时候服务器端的代码就是一切:接受浏览器的请求,实现业务逻辑,访问数据库, ...
- 后端程序员必备的 Linux 基础知识+常见命令(近万字总结)
大家好!我是 Guide 哥,Java 后端开发.一个会一点前端,喜欢烹饪的自由少年. 今天这篇文章中简单介绍一下一个 Java 程序员必知的 Linux 的一些概念以及常见命令. 如果文章有任何需要 ...
- java后端程序员1年工作经验总结
java后端1年经验和技术总结(1) 1.引言 毕业已经一年有余,这一年里特别感谢技术管理人员的器重,以及同事的帮忙,学到了不少东西.这一年里走过一些弯路,也碰到一些难题,也受到过做为一名开发却经常为 ...
随机推荐
- js身份证验证算法
var validateIdCard=function (id, backInfo) { var info={ y: "1900", m: "01", d: & ...
- location 将跟目录下某个文件夹指向2级目录
例如: /caffespressos/指向/web01/caffe/ [root@web01 default]# tree web01/ web01/ └── caffe └── index.html ...
- Overflow sort stage buffered data usage of 33554495 bytes exceeds internal limit of 33554432 bytes
MongoDB执行错误: Overflow sort stage buffered data usage of 33554495 bytes exceeds internal limit of 335 ...
- nyoj 15 括号匹配(2)
括号匹配(二) 时间限制:1000 ms | 内存限制:65535 KB 难度:6 描述 给你一个字符串,里面只包含"(",")","[" ...
- OpenGL ES 简单教程
什么是OpenGL ES? OpenGL ES (为OpenGL for Embedded System的缩写) 为适用于嵌入式系统的一个免费二维和三维图形库. 为桌面版本号OpenGL 的一个子集. ...
- Ubuntu 12.04 Subversion及GUI客户端RabbitVCS安装
(经过一天的使用,发现pygtk的内存泄漏问题严重影响使用,需要打一下deepin ui做的补丁:https://github.com/linuxdeepin/deepin-ui) 1. 类似Tort ...
- CSS(五):背景、列表、超链接伪类、鼠标形状控制属性
一.背景属性 1.背景属性用来设置页面元素的背景样式. 2.常见背景属性 属性 描述 background-color 用来设置页面的背景色,取值如red,#ff0000 background-ima ...
- 树莓派系统Raspbian安装小结
是有界面的系统. NOOBS, our easy installer for Raspbian 基于debian NOOBS stands for New Out Of Box Software h ...
- JQueryEasyUI-DataGrid显示数据,条件查询,排序及分页
<html><head> <title></title> <script src="/jquery-easyui-1.3.4 ...
- 关于Unity中的.meta文件
.meta文件是用于辅助管理Unity资源文件的文件,删除后,Unity会自动生成,里面记录了各个资源Inspector的信息,属性等等,Unity是不会改变源资源文件的,没有意义,它是靠.meta文 ...