AJAX 是与浏览器与服务器交换数据的技术,它在不重载全部页面的情况下,实现了前后台数据交互,可以选择操作dom对页面进行更新

jQuery 提供多个与 AJAX 有关的方法。
通过 jQuery AJAX 方法,您能够使用 HTTP Get 和 HTTP Post 从远程服务器上请求文本(text)、HTML、XML 或 JSON - 同时您能够把这些外部数据直接载入网页的被选元素中。
提示:如果没有 jQuery,AJAX 编程还是有些难度的。
编写常规的 AJAX 代码并不容易,因为不同的浏览器对 AJAX 的实现并不相同。这意味着您必须编写额外的代码对浏览器进行测试。不过,jQuery 团队为我们解决了这个难题,我们只需要一行简单的代码,就可以实现 AJAX 功能
$.ajax( {
"url" : "url", // 要提交的URL路径
"type" : "get", // 发送请求的方式
"data" : data, // 要发送到服务器的数据
"dataType" : "text", // 指定传输的数据格式
"beforeSend": function() { 请求之前的方法
}
"success" : function(result) { // 请求成功后要执行的代码
},
"error" : function() { // 请求失败后要执行的代码
}
} );
var data ={}
使用ajax进行增删改查时get、post方法都能实现其功能。但是出于数据安全性的考虑,数据的添加和修改最好不要使用get方法。当数据量极大的时候,数据的获取也不建议采用get方法。get方法数据传输速度快但不能传大数据,传输不安全,post方法适用于传输大数据,传输速度比get较慢但安全性高。 如:当获取某个实体类集合的时候
举例
@WebServlet("/back/facebook/facebookmanage")
public class FacebookManageServlet extends HttpServlet {
IFacebookService facebookService = new FacebookServiceImpl();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html;charset=utf-8");
req.setCharacterEncoding("UTF-8");
resp.setCharacterEncoding("UTF-8");
String fid = req.getParameter("id");
int id = 0;
if (!"".equals(fid))
id = Integer.parseInt(fid);
int result = facebookService.deleteFacebook(id);
resp.getWriter().print(result);
}
注意
resp.setContentType中的值根据前台所要接收的对应的数据类型来填写,dataType是json类型则填写"application/json",其他则为"text/html;charset=utf-8"。这是因为前后台的编码类型不一样所导致。
其实没有多大意义。success里的result接受到值之后,你可以把它转成json数据然后通过点的方式去获取数据
方法是:
JSON.parse(jsonstr); //可以将json字符串转换成json对象
JSON.stringify(jsonobj);//可以将json对象转换成json对符串
$.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象
resp.getWriter().print()可以传对象
resp.getWriter().writer()只能传字符串
需要灵活运用
简介
JSON(JavaScript Object Notation) 一种轻量级的数据交换格式 采用独立于语言的文本格式 通常用于在客户端和服务器之间传递数据
优点
JSON的优点 轻量级交互语言 结构简单 易于解析
定义JSON对象
var person = { "name" : "张三", "age" : 30, "spouse" : null };
定义JSON数组
var countryArray = [ "中国", "美国", "俄罗斯" ];
var personArray = [ { "name":"张三", "age":30 },
{ "name":"李四", "age":40 } ];
第一步 ajax jsp 页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style type="text/css">
html, body {
height: 100%;
overflow: auto;
}
body {
background: url(ad.jpg) top left;
background-size: 100%;
}
span {
color: blue;
font-size: 30px;
}
#a {
font-size: 20px;
}
</style>
</head>
<body>
<div style="width: 100%; text-align: center">
<h1 style="color: red">新增图书信息</h1>
<form action="${pageContext.request.contextPath}/jsp/AddbookServlet" method="get">
<div>
<span>图书名称:</span><input type="text" name="name" />
</div>
<br>
<div>
<span>图书作者:</span><input type="text" name="author" />
</div>
<br>
<div>
<span>购买日期:</span><input type="text" name="data" />
</div>
<br>
<div>
<span> 图书类别:</span>
<select id="typebook" name="typebook1" style="color: red">
<option value="0" >选择所属分类</option>
<option value="1" >1</option>
<option value="2" >2</option>
<option value="3" >3</option>
</select>
</divcone>
<br>
<div>
<span> </span><input type="submit" value="增加图书" name="subbook" id="subbooks"
style="font-size: 30px " />
</div>
</form>
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script type="text/javascript">
$("input[name=name]").blur(function (){
/* if($("input[name=name]").val()==""){
return;
} */
var data ={"name":$("input[name=name]").val()}
$.ajax( {
"url" : "NamebookServlet", // 要提交的URL路径
"type" : "get", // 发送请求的方式
"data" : data, // 要发送到服务器的数据
"dataType" : "text", // 指定传输的数据格式
"success" : function(result) { // 请求成功后要执行的代码
if(result=='true'){
alert("图书名称和作者名称不能为空")
$("input[name=name]").val("格式为(xxx)");
$("input[name=name]").focus();
console.log("图书名称和作者名称不能为空11111");
return;
}
},
"error" : function() {
// 请求失败后要执行的代码
}
} );
})
$("input[name=author]").blur(function (){
var data ={"author":$("input[name=author]").val()}
$.ajax( {
"url" : "AuthorbookServlet", // 要提交的URL路径
"type" : "get", // 发送请求的方式
"data" : data, // 要发送到服务器的数据
"dataType" : "text", // 指定传输的数据格式
"success" : function(result) { // 请求成功后要执行的代码
if(result=='true'){
alert("图书名称和作者名称不能为空")
$("input[name=author]").val("格式为(xxx)");
$("input[name=author]").focus();
console.log("图书名称和作者名称不能为空11111");
return;
}
},
"error" : function() {
// 请求失败后要执行的代码
}
} );
})
$("input[name=data]").blur(function (){
var data ={"data":$("input[name=data]").val()}
if($("input[name=data]").val()==""){
$("input[name=data]").val("格式为(yyyy-MM-dd)");
alert("时期格式错误")
return;
}
$.ajax( {
"url" : "DatabookServlet", // 要提交的URL路径
"type" : "get", // 发送请求的方式
"data" : data, // 要发送到服务器的数据
"dataType" : "text", // 指定传输的数据格式
"success" : function(result) { // 请求成功后要执行的代码
if(result=='true'){
alert("时期格式错误")
$("input[name=data]").val("格式为(yyyy-MM-dd)");
$("input[name=data]").focus();
console.log("时期格式错误11111");
return;
}
},
"error" : function() {
// 请求失败后要执行的代码
}
} );
})
$("#typebook").blur(function (){
var data ={"data":$("#typebook").val()}
if($("#typebook").val()=="0"){
alert("先选择图书分类")
}
})
$("$(input[name=subbook])").click(function (){
var data ={}
$.ajax( {
"url" : "AddbookServlet", // 要提交的URL路径
"type" : "get", // 发送请求的方式
"data" : data, // 要发送到服务器的数据
"dataType" : "text", // 指定传输的数据格式
"success" : function(result) { // 请求成功后要执行的代码
if(result=='true'){
alert("添加图书成功")
return;
}else{
alert("添加图书失败")
}
},
"error" : function() {
// 请求失败后要执行的代码
}
} );
})
</script>
</div>
</body>
</html>
第二步 处理ajax请求 响应结果
package webDemo05.kgc.Servletbook;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import webDemo05.kgc.pojo.Book;
import webDemo05.kgc.services.Sercicesdao;
/**
* Servlet implementation class AddbookServlet
*/
@WebServlet("/jsp/AddbookServlet")
public class AddbookServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public AddbookServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("UTF8");
response.setCharacterEncoding("UTF8");
response.setContentType("text/html;charset=utf-8");
Sercicesdao sd = new Sercicesdao();
String name = request.getParameter("name");
String author = request.getParameter("author");
String date = request.getParameter("data");
String typebook = request.getParameter("typebook1");
try {
/*SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); //格式化规则
Date date = user.getTime(); //获得你要处理的时间 Date型
String strDate= sdf.format(date ); //格式化成yyyy-MM-dd格式的时间字符串
Date newDate =sdf.parse(strDate);
java.sql.Date resultDate = new java.sql.Date(newDate.getTime());//最后转换成 java.sql.Date类型数据就可以了 注意:最开始时间数据类型是 java.util.Date类型
*/
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
//格式化规则
java.sql.Date date2 = new java.sql.Date(sdf.parse(date).getTime());
System.out.println(date2);
Book book = new Book(Integer.valueOf(1),name,author,date2,typebook);
boolean addb = sd.addb(book);
if(addb) {
response.getWriter().print(true);
response.sendRedirect("addbook.jsp");
return;
}else {
request.getRequestDispatcher("addbook.jsp").forward(request, response);
return;
}
} catch (ParseException e) {
e.printStackTrace();
}
//称:</span><input type="text" name="name" />
//
//
//
//者:</span><input type="text" name="author" />
//
//
//
//期:</span><input type="Date" name="data" />
//
//
//
//sp;图书类别:</span>
//ame="typebook" style="color: red">
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
package webDemo05.kgc.Servletbook;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import webDemo05.kgc.pojo.Book;
import webDemo05.kgc.pojo.RandInfo;
import webDemo05.kgc.services.Sercicesdao;
/**
* Servlet implementation class Addbook2Servlet
*/
@WebServlet("/jsp/Addbook2Servlet")
public class Addbook2Servlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public Addbook2Servlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
//格式化规则
for (int i = 0; i < 2; i++) {
Sercicesdao sd = new Sercicesdao();
RandInfo rr = new RandInfo();
String date2=new Date().toString();
Book book = new Book(Integer.valueOf(1),rr.getFemaleName()+"笔记",rr.getFemaleName(),new Date(),"计算机/软件");
sd.addb(book);
}
response.sendRedirect("LonginServlet");
return;
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
package webDemo05.kgc.Servletbook;
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;
/**
* Servlet implementation class AuthorbookServlet
*/
@WebServlet("/jsp/AuthorbookServlet")
public class AuthorbookServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public AuthorbookServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html;charset=utf-8");
req.setCharacterEncoding("UTF-8");
resp.setCharacterEncoding("UTF-8");
String author = req.getParameter("author");
if(author==null||"".equals(author.trim())) {
resp.getWriter().print(true);
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
以上就是AJAX实现局部刷新功能的详细内容,更多关于AJAX局部刷新的资料请关注其它相关文章!
# AJAX局部刷新
# AJAX刷新
# 实现AJAX异步调用和局部刷新的基本步骤
# Ajax实现局部刷新的方法实例
# JQuery 又谈ajax局部刷新
# ajax局部刷新实例 (三种方法推荐)
# 纯JS实现AJAX局部刷新功能
# 发送到
# 转换成
# 数据格式
# 为空
# 格式为
# 您能
# 就可以
# 也不
# 你可以
# 多个
# 你要
# 都能
# 适用于
# 把它
# 相关文章
# 俄罗斯
# 如果没有
# 多大
# 只需要
# 美国
相关文章:
建站主机如何安装配置?新手必看操作指南
教学论文网站制作软件有哪些,写论文用什么软件
?
手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?
网站制作与设计教程,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何在Ubuntu系统下快速搭建WordPress个人网站?
C#如何序列化对象为XML XmlSerializer用法
广州顶尖建站服务:企业官网建设与SEO优化一体化方案
建站之星在线客服如何快速接入解答?
建站之星24小时客服电话如何获取?
广东企业建站网站优化与SEO营销核心策略指南
javascript基本数据类型及类型检测常用方法小结
Python lxml的etree和ElementTree有什么区别
如何批量查询域名的建站时间记录?
详解jQuery停止动画——stop()方法的使用
免费视频制作网站,更新又快又好的免费电影网站?
百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?
如何打造高效商业网站?建站目的决定转化率
视频网站制作教程,怎么样制作优酷网的小视频?
外贸公司网站制作哪家好,maersk船公司官网?
建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略
如何在阿里云通过域名搭建网站?
攀枝花网站建设,攀枝花营业执照网上怎么年审?
如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?
平台云上自主建站:模板化设计与智能工具打造高效网站
宝塔面板如何快速创建新站点?
详解jQuery中基本的动画方法
如何在Golang中使用replace替换模块_指定本地或远程路径
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
如何用好域名打造高点击率的自主建站?
专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?
建站之星如何实现PC+手机+微信网站五合一建站?
定制建站模板如何实现SEO优化与智能系统配置?18字教程
html制作网站的步骤有哪些,iapp如何添加网页?
设计网站制作公司有哪些,制作网页教程?
表情包在线制作网站免费,表情包怎么弄?
,有什么在线背英语单词效率比较高的网站?
如何快速配置高效服务器建站软件?
威客平台建站流程解析:高效搭建教程与设计优化方案
婚礼视频制作网站,学习*后期制作的网站有哪些?
如何快速搭建高效服务器建站系统?
c# Task.ConfigureAwait(true) 在什么场景下是必须的
无锡营销型网站制作公司,无锡网选车牌流程?
如何实现建站之星域名转发设置?
SQL查询语句优化的实用方法总结
如何在万网自助建站平台快速创建网站?
C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)
免费网站制作模板下载,除了易企秀之外还有什么H5平台可以制作H5长页面,最好是免费的?
Thinkphp 中 distinct 的用法解析
如何在IIS中配置站点IP、端口及主机头?
如何快速生成可下载的建站源码工具?
*请认真填写需求信息,我们会在24小时内与您取得联系。