以下为ajax和jsp之间调用。目前代码有问题,希望高手赐教。
主要有以下问题:
1、callback方法中的status!=200而是==0,不明白为什么?(网上说是本地正确反馈)
2、获取不到jsp中out.print的值,获取到的responseText==“”,但是明明给传值了,不解。
<!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>Insert title here</title>
</head>
<body>
<button name="aa" value="是否支持ajax" onclick="getHttpRequest();">是否支持ajax</button>
<script type="text/javascript">
function getHttpRequest(){
var xmlHttp;
try{
xmlHttp = new XMLHttpRequest();
alert("非IE获取");
}catch(e){
try{
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
alert("IE6.0+获取");
}catch(e){
try{
xmlHttp = new ActiveXObeject("Microsoft.XMLHTTP");
alert("IE低版本获取");
}catch(e){
alert("您的浏览器不支持AJAX");
return false;
}
}
}
return xmlHttp;
}
//-----------------------------------------------------------------------
//打开服务器响应过程函数
//-----------------------------------------------------------------------
function callback(xmlrequest){
if(xmlrequest.readyState==4 && xmlrequest.status==200){
var result=xmlrequest.responseText;
document.getElementById("checkInfo").innerHTML=result;
}
}
function go(){
//判断表单输入内容---------------------------------------------
var form=document.loginForm;
if(form.username.value==""){
document.getElementById("checkInfo").innerHTML="用户名不能为空";
return;
}
if(form.pass.value==""){
document.getElementById("checkInfo").innerHTML="密码不能为空";
return;
}
document.getElementById("checkInfo").innerHTML="正在登录,请稍候......";
document.getElementById("bt").disabled=true;
var xmlHttp = getHttpRequest();
if(xmlHttp == null){
alert("您的浏览器不支持AJAX");
}else{
//构造发送数据字符串
var url="../deal/getResult.jsp";
var formData="username="+form.username.value+"&pass="+form.pass.value;
url= url+ "?"+formData;
alert(url);
xmlHttp.open("GET",url,true);
xmlHttp.onreadystatechange=function(){
callback(xmlHttp);
}
xmlHttp.send(null);
}
}
</script>
<div id="checkInfo">请填写用户名和密码</div>
<form action="" method="post" name="loginForm" >
<input type="text" name="username" />
<br />
<input type="password" name="pass" />
<br />
<input id="bt" type="button" name="Submit" value="提交验证" onClick="go()">
<br />
</form>
</body>
</html>
调用的jsp判断ajax提交内容,根据提交内容返回结果,显示结果:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@page import="java.io.PrintWriter"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%
String username = request.getParameter("username");
String password = request.getParameter("pass");
response.setHeader("Charset","UTF-8");
response.setContentType("text/html; charset=UTF-8");
if("admin".equals(username) && "admin".equals(password)){
out.print("恭喜你通过验证");
}else{
out.print("用户名或者密码有误");
}
%>
相关推荐
采用ajax技术实现的图形验证码,在前端进行验证。验证码信息为图片。每一行代码均有注释,通俗易懂。 实现步骤: 1、创建web工程 ... 6、在js文件中,通过dwr,调用AjaxService类中的方法,取得数据,实现判断
这里主要是添加了它的特有属性并调用 class=”chzn-select”: jsp页面: <select class=”chzn-select” id="CODE" name="CODE"> ...... </select> js页面: $(".chzn-select").chosen(); 注意...
5. 响应一个请求的分层结构约定,列举几个示例(常规调用、Ajax调用、WebService调用、提供WebService暴露、硬件设备接口调用); 6. 验证代码质量的约定,如JUnit、EMMA、FindBugs、CheckStyle、PMD的使用;Hudson...
\ajaxmodel\amel\html\autoRefresh.jsp 自动刷新网页的客户端页面。 \ajaxmodel\amel\html\processBar.jsp 显示进度条的客户端页面。 \ajaxmodel\src\bonze\UserValServlet.java 完成验证的服务器端。 \...
1.2.4使用javascript与ajax提升用户体验 7 1.3多种集成开发环境 9 1.3.1集成开发环境简介 9 1.3.2web应用服务器说明 11 本章小结 14 课后练习 14 第2章 javaee运行及开发环境 15 2.1jdk的下载与安装 15 ...
第3章 struts 2标签库详解与ajax技术应用 103 3.1 struts 2主题与模板 103 3.2 struts 2控制标签详解 105 3.2.1 if/elseif/else标签详解 105 3.2.2 iterator标签详解 106 3.2.3 append标签详解 108 3.2.4 ...
2.32.2 为按钮增加权限控制(在平台子系统配置方法任务关联) 81 2.33 保存成功后提示alert()而不跳转页面 82 3 页面多行录入的处理方案 83 3.1 概述 83 3.2 设计思想 84 3.3 方法调用顺序 85 3.3.1 点击...
国内知名的高端IT技术作家,已出版《Spring 2.0宝典》、《基于J2EE的Ajax宝典》、《轻量级J2EE企业应用实战》、《Struts 2权威指南》、《Ruby On Rails敏捷开发最佳实践》等著作。 目录: 第0章 学习Java...
关联(同伴,伙伴) [ә'sәuʃieit] attribute n.属性(品质,特征) [ә'tribju:t] boolean (关键字) 逻辑的, 布尔型 call n.v.调用; 呼叫; [kɒ:l] circumstance n.事件(环境,状况) ['sә:kәmstәns] crash n.崩溃,...
12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托...
12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托...
12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托...
12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托...
12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托...
12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托...
12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中...
12、写Hibernate的一对多和多对一双向关联的orm配置? 134 9、hibernate的inverse属性的作用? 134 13、在DAO中如何体现DAO设计模式? 134 14、spring+Hibernate中委托方案怎么配置? 134 15、spring+Hibernate中委托...
12、写Hibernate的一对多和多对一双向关联的orm配置? 122 9、hibernate的inverse属性的作用? 122 13、在DAO中如何体现DAO设计模式? 123 14、spring+Hibernate中委托方案怎么配置? 123 15、spring+Hibernate中委托...