JQ三种方式实现Ajax请求

目录

一、单纯GET请求 $.get()

二、单纯POST请求 $.post()

三、指定GET/POST方式 $.ajax


一、单纯GET请求 $.get()

1、w3c上的介绍

2、代码实现

jsp文件

<%@ 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>jq $.get</title>
<script type="text/javascript" src="js/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="js/ajax3.js"></script>
</head>
<!-- jq $.get -->
<body>
	<button id="button">ajax技术 get请求</button>
	<hr />
	<span id='span'></span>
</body>
</html>

js文件

$(function() {
	$("#button").click(function() {
		//function(data, status)是指回流函数,data是写回在缓存中的数据,status是运行状态
        //$.get("AjaxServlet2",{username:"lisi"}, function(data, status) {这样子写也是一样的,最后get请求都会带随参数可见
		$.get("AjaxServlet2?username=lisi", function(data, status) {
			alert("Data: " + data + "\nStatus: " + status);
			$("#span").text(data);
		});
	})
})

Servlet文件(后面都是用这个

package com.demo.servlet;
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;
/**
 * 功能:ajax底层实现
 * 时间:2018-12-9
 * @author 
 *
 */
@WebServlet("/AjaxServlet2")
public class AjaxServlet2 extends HttpServlet {
	private static final long serialVersionUID = 1L;
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		//获取请求信息
		String username = request.getParameter("username");
		//响应请求信息
		response.getWriter().write("username:"+username);
	}
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doGet(request, response);
	}

}

测试结果

二、单纯POST请求 $.post()

1、w3c上的介绍

2、代码演示

jsp文件

<%@ 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>jq $.post</title>
<script type="text/javascript" src="js/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="js/ajax4.js"></script>
</head>
<!-- jq $.post -->
<body>
	<button id="button">ajax技术 post请求</button>
	<hr />
	<span id='span'></span>
</body>
</html>

js文件

$(function() {
	$("#button").click(function() {
		//function(data, status)是指回流函数,data是写回在缓存中的数据,status是运行状态
		$.post("AjaxServlet2",{username:"wangwu"}, function(data, status) {
			alert("Data: " + data + "\nStatus: " + status);
			$("#span").text(data);
		});
	})
})

测试结果

三、指定GET/POST方式 $.ajax

1、代码及常用属性介绍

jsp文件

<%@ 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>jq $.ajax</title>
<script type="text/javascript" src="js/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="js/ajax5.js"></script>
</head>
<!-- jq $.ajax -->
<body>
	<button id="button">ajax技术 post请求</button>
	<hr />
	<span id='span'></span>
</body>
</html>

js文件

$(function() {
	$("#button").click(function() {
		$.ajax({
			url:"AjaxServlet2",			//请求的url
			type:"post",				//请求提交的方式
			data:{username:"zhaoyun"},	//请求传递的参数
			success:function(data, status){//回调函数 data是写回在缓存中的数据,status是运行状态
				alert("Data: " + data + "\nStatus: " + status);
				$("#span").text(data);
			},
			error:function(){			//当出现错误执行的回调函数
				alert("出错了");
			},
			dataType:"text"				//预期服务器返回的数据类型,常用json
		});
	})
})

2、测试结果

假设把请求的url改成不存在的路径,测试结果

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值