之前在项目中使用ajax都是通过JQuery的Ajax API来进行的,今天试了一下通过基本的Javascript来进行ajax请求,将代码记录下来:
jsp 页面
[xhtml] view plaincopy
<%@ page pageEncoding="UTF-8"%>
>
<html>
<head>
<title>Ajaxtitle>
<script type="text/javascript" src="media/js/jquery.js" mce_src="media/js/jquery.js">script>
<script type="text/javascript" src="media/ajax.js" mce_src="media/ajax.js">script>
head>
<body>
Ajax.jsp<br/>
<div id="msg" style="background-color:#EEEEEE;width:400px;height:200px;margin:1em;padding:1em;border:1px solid #DD6900">
啦啦啦
div>
<button id="start" style="margin:1em;border:1px solid #DD6900" mce_style="margin:1em;border:1px solid #DD6900">Start Ajaxbutton>
body>
html>
进行ajax请求的js 代码,可以附带一些json和xml数据(必须是post方法)
[javascript] view plaincopy
var xmlHttp;
function createXMLHttpRequest() {
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
}
var okFunc = function(){
if(xmlHttp.readyState == 4) {
if(xmlHttp.status == 200) {
$("#msg").html(xmlHttp.responseText);
}
}
}
var startAjax = function(){
$("#msg").html("Loading...");
createXMLHttpRequest();
if( !xmlHttp){
return alert('create failed');
}
xmlHttp.open("POST", "Test", true);
xmlHttp.onreadystatechange = okFunc;
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlHttp.send("name=zhangsan"); //参数
}
;
在服务器端的Servlet:
java 代码
[java] view plaincopy
package ajax;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Test extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
BufferedReader reader = request.getReader();
String line = null;
while((line = reader.readLine()) != null) {
System.out.println(line);
}
//request.getParameter("name");
System.out.println("Start writing");
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("success");
out.flush();
out.close();
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
doGet(req, resp);
}
}
分享到:
相关推荐
- **创建 XMLHttpRequest 对象**:JavaScript代码创建一个XMLHttpRequest对象,它是AJAX请求的基础。 - **打开连接**:使用XMLHttpRequest对象的`open()`方法,指定请求类型(GET或POST)、URL和是否异步。 - **...
8. **Promise和Fetch API**:随着ES6和Fetch API的引入,现代JavaScript中处理Ajax请求变得更加优雅,Fetch API返回Promise对象,可以配合async/await语法糖实现异步控制流。 9. **Ajax的优缺点**:优点在于提升...
### Ajax请求对象的创建与使用 在不同的浏览器环境下,创建Ajax请求对象的方式有所不同: - 在Firefox和其他非IE浏览器中,可以通过`window.XMLHttpRequest`来创建请求对象:`var xhr = new XMLHttpRequest();` - ...
接着,结合源代码实践,尝试编写简单的Ajax请求。最后,通过PPT巩固理论知识,理解Ajax在实际项目中的应用。 总的来说,韩顺平老师的Ajax笔记、源码和PPT提供了一个全面的学习资源,适合对Ajax感兴趣的初学者和进阶...
Ajax(Asynchronous JavaScript and XML)是Web2.0的关键技术之一,它并非单一的新技术,而是将现有的技术(如JavaScript、XML、CSS、DOM等)以创新的方式组合使用,以实现更加高效、响应式的Web应用。Ajax的核心...
通过以上内容的学习,我们了解到 Ajax 的基本原理及其关键组成部分,包括 `XMLHttpRequest` 对象的创建、请求的发送与接收、回调函数的使用等。同时,我们也讨论了一些进阶主题,如跨域请求的问题及解决方案。掌握...
### Ajax学习笔记个人总结 #### 一、XMLHttpRequest对象简介 ...以上总结了 AJAX 的基本使用方法及其核心概念。通过掌握这些基础知识,初学者可以快速上手并利用 AJAX 实现更高效、更友好的 Web 应用交互体验。
- **CORS跨域**:AJAX请求遵循同源策略,跨域需要服务器设置CORS头。 - **Ajaxify网站**:通过 PJAX(Push State + AJAX)技术,实现页面导航的平滑过渡。 - **WebSockets**:对于需要双向实时通信的应用,可以考虑...
结合以上知识点,开发者可以利用JavaScript处理用户交互,使用Ajax实现无刷新更新,通过jQuery简化DOM操作,从而创建出更高效、用户体验更佳的网页应用。在实践中,理解并熟练掌握这些技术是提升Web开发能力的关键...
4. **异步加载与进度条**:实现文件上传时的进度条功能,展示Ajax请求的进度。 通过以上四天的学习,你将能够熟练掌握Ajax的基本原理和应用,从而在实际项目中提高Web应用的性能和用户体验。在MyEclipse环境下,你...
使用XMLHttpRequest进行请求和响应的关键在于设置`onreadystatechange`事件处理函数,以监听请求的状态变化。当`readyState`变为4且`status`为200时,表示请求成功,可以处理服务器返回的数据。 **2.4 实例:在AJAX...
总结,本笔记深入介绍了Ajax的基本概念、使用方法及其优势,同时结合实例探讨了如何在实际项目中应用Ajax。此外,还介绍了JSON这一重要的数据交换格式,理解并熟练掌握Ajax和JSON,对于提升Web应用的用户体验和性能...
由于同源策略限制,Ajax请求通常只能访问同一域名下的资源。跨域请求需要服务器设置CORS(跨源资源共享)头,或者使用JSONP(JSON with Padding)技术。 通过学习黑马程序员的Ajax笔记,你可以深入了解Ajax的工作...
在本篇16ajax学习笔记1中,我们将探讨Ajax的基础概念、使用方法以及jQuery库中的Ajax实现。 1、发送请求: Ajax的首要任务是创建XMLHttpRequest对象,这是浏览器提供的API。在JavaScript中,我们可以通过new ...
当Ajax请求的源与目标服务器不同,需要开启CORS来允许跨域请求。服务器端需要设置适当的响应头,客户端也需要相应的处理。 ### 8. JSONP(JSON with Padding) 对于不支持CORS的旧浏览器,可以通过JSONP实现跨域...
### Ajax和jQuery学习笔记 #### 一、Ajax基础与原理 **1.1 什么是Ajax?** Ajax(Asynchronous JavaScript and XML,异步JavaScript和XML)是一种用来创建快速动态网页的技术,通过在后台与服务器进行少量数据...
例如,jQuery提供了$.ajax()函数,使得发送Ajax请求变得非常简单。同时,这些框架还提供了更好的错误处理和兼容性支持。 Ajax+.pdf、AJAX_.pdf、Ajax开发简略.pdf、ajax框架集合.pdf、AJAX.pdf这五个文档可能分别...
2. **JavaScript**:AJAX通过JavaScript来创建和控制XMLHttpRequest对象,这是与服务器进行通信的关键。 3. **XML与JSON**:虽然名称中有XML,但现在更常见的是使用JSON格式来传递数据,因为JSON更轻量级且易于处理...
"Web+HTML+JavaScript+Ajax学习笔记"这个主题涵盖了许多Web开发的核心概念和技术。通过深入学习这些笔记,你将能够创建动态、交互式的Web应用,并理解前后端如何协同工作。同时,持续学习和掌握新的Web技术,如框架...
1. **安全问题**:由于跨域限制,Ajax请求只能在同源策略允许的范围内进行。 2. **浏览器兼容性**:虽然大多数现代浏览器支持Ajax,但早期版本或非主流浏览器可能存在问题。 3. **SEO挑战**:搜索引擎爬虫可能无法...