1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
//阿贾克斯的使用
//1.获取连接对象(固定)
function createXMLHttpRequest(){
try
{
// 如果是你是IE高版本 火狐 谷歌
return
new
XMLHttpRequest();
}
catch
(e) {
try
{
// 如果是IE6的版本
return
new
ActiveXObject(
"Msxml2.XMLHTTP"
);
}
catch
(e) {
try
{
// 如果是IE5.5版本
return
new
ActiveXObject(
"Microsoft.XMLHTTP"
);
}
catch
(e) {
alert(
"大哥!您这是什么浏览器呀!!"
);
}
}
}
}
//方法名字不能是关键字
function method1(aa){
//获取对象
var res =createXMLHttpRequest();
//连接服务器访问资源
res.open(
"post"
,
"${pageContext.request.contextPath}/ajaxDemo"
,
true
);
// 设置请求头
res.setRequestHeader(
"Content-Type"
,
"application/x-www-form-urlencoded"
);
//发送连接参数
res.send(
"username="
+aa);
//接受服务器返回的状态码
res.onreadystatechange = function(){
// 做出判断,如果xhr的对象状态已经为4了,说明响应已经结束了
// 不仅会判断状态是否为4,还会判断状态码是否为200
if
(res.readyState ==
4
&& res.status ==
200
){
// 在该位置,获取到响应的内容了。
// 接收响应的代码
var result = res.responseText;
//给span标签赋值
document.getElementById(
"span"
).innerHTML = result;
}
};
}
|
Servlet
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
public
void
doGet(HttpServletRequest request, HttpServletResponse response)
throws
ServletException, IOException {
request.setCharacterEncoding(
"UTF-8"
);
response.setContentType(
"text/html;charset=UTF-8"
);
String username = request.getParameter(
"username"
);
//查询数据库
QueryRunner runner =
new
QueryRunner(JdbcUtils.getDataSource());
String sql=
"select count(*) from user where username=?"
;
try
{
long
count = (Long) runner.query(sql,
new
ScalarHandler(),username);
if
(count==
0
) {
//返回Text类型字符串
response.getWriter().print(
"<font color='green'>用户名可以注册</font>"
);
}
else
{
response.getWriter().print(
"<font color='green'>用户名已经被占用</font>"
);
}
}
catch
(SQLException e) {
e.printStackTrace();
}
}
|