AJAX
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<script type="text/javascript">
/* 标准AJAX模板 */
//使用 false 作为判定条件,它表示还没有创建 XMLHttpRequest 对象
var http_request=false;
//创建XMLHttpRequest对象方法
function send_request(){
http_request=false;
//火狐
if(window.XMLHttpRequest){
http_request=new XMLHttpRequest();
if(http_request.overrideMimeType){
http_request.overrideMimeType('text/xml');
}
}else if(window.ActiveXObject){//IE
try{
http_request=new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
http_request=new ActiveXObject("Microsoft.XMLHTTP");
}catch(e2){}
}
}

if(!http_request){//检查 request 是否仍然为 false(如果一切顺利就不会是 false)
window.alert("Err Create XMLHttpRequest!");
}

}

//与服务器交互
function sendReg(url)
{
//创建AJAX引擎
send_request();
//设定回调函数
//服务器响应完毕以后会自动调用回调函数一次
http_request.onreadystatechange = requestReg;
//与服务器连接
//1.提交方式(get/post)
//2.提交路径(url)
//3.是否异步
http_request.open("get",url,true);
//使用get方法不缓存
http_request.setRequestHeader("If-Modified-Since","0");
//提交请求
//get null
http_request.send(null);
}

//事件函数
function test()
{
//获得文本框的数据
var text = document.getElementById("text").value;
//get
//定义当前访问服务器URL
var url = "reg?text=" + text;
//使用UTF-8的编码将字符串进行解码
url = encodeURI(url);
//与服务器交互
sendReg(url);
}
//定义回调函数
function requestReg()
{
//判断就绪状态
if(http_request.readyState == 4)
{
//判断响应状态
if(http_request.status == 200)
{
//获得服务器响应的数据
var res = http_request.responseText;
//注意这里是通过在servlet中用out.println("****");所传输的数据,你也可以用XML的格式来发送,那就为var res = http_request.responseXML;然后可以使用res.getElementsByTagName等DOM的解析方法来解析;这个可以到网上查到相关资料

//alert(res);
if(res == "true")
{
document.getElementById("result").innerHTML = "<font color='red'>此用户名已经被注册了</font>";
document.getElementById("submit").disabled = true;
}
else
{
document.getElementById("result").innerHTML = "<font color='blue'>此用户名没有被注册</font>";
document.getElementById("submit").disabled = false;
}
}
}
}

</script>
</head>

<body style="test-align:center" onload="add()">
<table align="center" cellspacing="0" width="500" border="0">
<tr>
<td width="100">用 户 名</td>
<td width="200"><input type="text" id="text" onblur="test()"/></td>
<td width="200" id="result"></td>
</tr>
<tr align="center">
<td colspan="2"><input type="button" value="注册" id="submit" disabled="disabled"/></td>
<td></td>
</tr>
</table>
</body>
</html>

JAVA中AJAX的使用的更多相关文章

  1. 第88节:Java中的Ajax和ASP.NET和TCP/IP 教程和JSON

    第88节:Java中的Ajax和Jquery ajax是什么?有什么用?原理,怎么用? ajax是asynchronous javascript and xml(异步javascript和xml),是 ...

  2. java 中使用ajax调用后台方法注意事项

    java 中使用ajax调用后台方法注意事项,后台方法一定要加@ResponseBody jQuery.validator.addMethod("checkRuleName",fu ...

  3. 快速掌握Ajax-Ajax基础实例(Ajax返回Json在Java中的实现)

    (转)实例二:Ajax返回Json在Java中的实现 转自http://www.cnblogs.com/lsnproj/archive/2012/02/09/2341524.html#2995114 ...

  4. ajax传JSON时设置的contenttype导致JAVA中request.getParameter("")怎么也接收不到数据

    ajax传JSON时设置的contenttype默认值是application/x-www-form-urlencoded, 当ajax传JSON时设置的contenttype 如果是applicat ...

  5. prototype.js 和 jQuery.js中 ajax 的使用

    这次还是prototype.js 和 jQuery.js冲突的问题,前面说到过解决办法http://www.cnblogs.com/Joanna-Yan/p/4836252.html,以及上网说的大部 ...

  6. jquery中ajax 从前端到后端 完整过程解析

    几个原则: 1.get方式访问浏览器时,常加参数缘由: GET访问浏览器是等幂的,就是一个相同的URL只有一个结果[相同是指整个URL字符串完全匹配],所以第二次访问的时候如果 URL字符串没变化,浏 ...

  7. jquery中ajax的使用

    Java软件开发中,后台中我们可以通过各种框架,像SSH等进行对代码的封装,方便我们对Java代码的编写,例如,Struts,SpringMVC对从前台到action的流程进行封装控制,使我们只需要进 ...

  8. 通过Jquery中Ajax获取json文件数据

    1. JSON(JavaScript Object Notation): javaScript对象表示法: 是存储和交换文本信息的语法,比xml更小,更快,更易解析. 2. JSON基本书写格式 : ...

  9. java中回调函数的理解

    一,案例一 "通常大家说的回调函数一般就是按照别人(李四)的定好的接口规范写,等待别人(张三)调用的函数,在C语言中,回调函数通常通过函数指针来传递:在Java中,通常就是编写另外一个类或类 ...

随机推荐

  1. nfs服务部署记录

    一.概念介绍NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布.功能是通过网络让不同的机器.不同的操作系统能 ...

  2. Structs2配置文件相关说明

    1,structs.xml文件解析 <package name="front" namespace="/front" extends="stru ...

  3. 如何将matlab画出的图片保存为要求精度

    · 来源:http://emuch.net/bbs/viewthread.php?tid=2705843 杂志社对投稿图片的分辨率通常有如下要求: TIFF: Colour or greyscale ...

  4. DEDECMS之八 漏洞错误和疑难杂症

    1.dedecms文章加粗b属性后出现strong或者b标签修改 dedecms的文章,如果设置了加粗的属性后,文章标题那会自动添加一个strong或者是b标签,如何去掉呢,方法如下: a.更改自动添 ...

  5. 【HTML5+MVC4】xhEditor网页编辑器图片上传

    准备工作: 创建一个MVC项目中,添加好xhEditor插件 相关用法:http://www.cnblogs.com/xcsn/p/4701497.html 注意事项:xhEditor分为v1.1.1 ...

  6. swift 定时器的使用

    在swift中,要使用定时器就需要用到对象NSTimer.通过NSTimer的实例化后,就可以调用fire方法来启用了. NSTimer有2个构造函数 init(timeInterval ti: NS ...

  7. mvc route的注册,激活,调用流程

    mvc route的注册,激活,调用流程(三) net core mvc route的注册,激活,调用流程 mvc的入口是route,当前请求的url匹配到合适的route之后,mvc根据route所 ...

  8. 1002. A+B for Polynomials

    1002. A+B for Polynomials (25) This time, you are supposed to find A+B where A and B are two polynom ...

  9. 数据库 Linux下的MySQL数据库管理

    数据库就是数据的集合. 关系数据库是一种特殊的数据库,他将数据组织城标,并表示为表之间的关系. 数据库系统往往是大型项目的核心数据内容,如银行的用户账户信息,腾讯QQ的用户账户信息.股市的各种交易信息 ...

  10. PRML读书会第十一章 Sampling Methods(MCMC, Markov Chain Monte Carlo,细致平稳条件,Metropolis-Hastings,Gibbs Sampling,Slice Sampling,Hamiltonian MCMC)

    主讲人 网络上的尼采 (新浪微博: @Nietzsche_复杂网络机器学习) 网络上的尼采(813394698) 9:05:00  今天的主要内容:Markov Chain Monte Carlo,M ...