后端程序员如何玩转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.引言 毕业已经一年有余,这一年里特别感谢技术管理人员的器重,以及同事的帮忙,学到了不少东西.这一年里走过一些弯路,也碰到一些难题,也受到过做为一名开发却经常为 ...
随机推荐
- Python 实int型和list相互转换 现把float型列表转换为int型列表 把列表中的数字由float转换为int型
第一种方法:使用map方法 >>> list = [, ] #带有float型的列表 >>> int_list = map(int,list) #使用map转换 & ...
- 采用 EventHandler 模式发布事件(转载)
采用 EventHandler 模式发布事件 (如果不需要与事件一起发送自定义数据,请跳过此步骤,进入步骤 3a.)在发行者类和订阅方类均可看见的范围中声明自定义数据的类. 然后添加保留您的自定义事件 ...
- Json映射为Map,避免定义过多pojo类
我们在开发过程中经常会遇到解析Json字符串的情况,这时候采用开源工具可以快速将json字符串映射为pojo对象.而在某些业务场景中,往往为了获得json字符串中某个属性的值而不得不定义一个pojo类 ...
- AngularJS 中 Controller 之间的通信
用 Angular 进行开发,基本上都会遇到 Controller 之间通信的问题,本文对此进行一个总结. 在 Angular 中,Controller 之间通信的方式主要有三种: 1)作用域继承.利 ...
- ubuntu内窗口最大最小化
我用的dell笔记本,开始的时候,需要修改dell笔记本的BIOS,里面有一个 Funtion Key 一开始定义的行为是多媒体的,需要改成默认行为,具体记不清了, 反正知道这个,肯定知道哪里找. 然 ...
- CentOS 6.2下更新GCC
在centos中安装了QT5.1.0,发现无法启动,原因好像是GCC版本问题,所以就更新GCC. 1.下载GCC源码: 下载网址:http://ftp.gnu.org/gnu/gcc/gcc-4.8. ...
- ELK-“线上标准文档”——测试
Elasticstack官网:https://www.elastic.co 本文档仅限搭建过程参考,使用相关的文档,不在本文档讨论范围之内. 一切依据的核心即是Elasticstack官网. 查看支持 ...
- exchange邮箱系统增加验证码机制
首先背景是exchange的邮箱系统没有后台源代码.因为这个原因,生成验证码的机制放在aspx的runat="sever"后台代码里面. 首先需要找到iis中logon.aspx文 ...
- 解决异常:Package should contain a content type part [M1.13]
http://blog.csdn.net/llwan/article/details/8890190 ————————————————————————————————————————————————— ...
- 错题0925-java
1.Given the following code: public class Test { private static int j = 0; private static Boolean met ...