jsp页面两个输入日期框,怎么传值到servlet jsp 传值,再根据日期查询数据,表示不会ajax

09:31 提问
ajax如何实现页面跳转
当我用AJAX像服务器发送一个登录请求后,服务器验证数据是否正确,是则跳到另一个
页面,否则返回一个数据错误的信息给AJAX,页面不刷新。
当验证正确时我用的是servlet的
request.getRequestDispatcher("../index.jsp").forward(request, response);跳转方式
错误就直接out.print();可是不管怎样都是跳到了那个请求页面
请问要怎样才能跳到另一个页面,还能带着数据过去
//声明XMLHttpRequest对象
//初始化XMLHttpRequest
function createXMLHttpRequest(){
if(window.XMLHttpRequest){
xmlrequest = new XMLHttpRequest();
}else if(window.ActiveXObject){
xmlrequest = new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
xmlrequest = new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){
//定义回调函数
function processResponse(){
//响应完成
if(xmlrequest.readyState == 4){
//响应正常
if(xmlrequest.status == 200){
var head = xmlrequest.responseT
alert(head);
servlet代码
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
System.out.println("post被触发了");
request.setCharacterEncoding("UTF-8");
response.setContentType("text/charset=UTF-8");
String account = request.getParameter("account");
String password = request.getParameter("password");
if (account == "admin" & password == "admin"){
request.getRequestDispatcher("../index.jsp").forward(request, response);
PrintWriter out = response.getWriter();
out.print("错误");
按赞数排序
贴出code来看看,ajax和处理请求的java方法。
可以用jquery的ajax啊 方便 $.post("url",{......},funtion(result){
if(result){跳转网页}else{弹出提示框}
ajax请求不理会跳转的,你需要在客户端用js进行跳转,如果正确你输出1,不正确输出0就行,其他不要输出
function processResponse(){
//响应完成
if(xmlrequest.readyState == 4){
//响应正常
if(xmlrequest.status == 200){
var head = xmlrequest.responseT
if(head=='1')location='xxxxxxxxxxxxxxxxxx'///////成功进行体总站
success : function(data){
if(data.status='1'){
//跳转,也可以?传值将参数传过去
window.location.href="";
希望对你有帮助,ajax的数据项有省略,具体查看api
页面间传值可以用Session对象
利用ajax返回成功后,在success回调函数中window.location=""可以在本页面进行跳转
type : "post",
success : function(json)
if (json.success)
alert("ajax成功!");
var url = $("#save").val();
window.location =
alert(json.msg || "ajax失败!");
error : function(json)
alert("ajax失败!");
type : "post",
success : function(json)
if (json.success)
alert("ajax成功!");
var url = $("#save").val();
window.location =
alert(json.msg || "ajax失败!");
error : function(json)
alert("ajax失败!");
//js获取项目根路径,如: http://localhost:8083/uimcardprj
function getRootPath(){
//获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp
var curWwwPath=window.document.location.
//获取主机地址之后的目录,如: uimcardprj/share/meun.jsp
var pathName=window.document.location.
var pos=curWwwPath.indexOf(pathName);
//获取主机地址,如: http://localhost:8083
var localhostPaht=curWwwPath.substring(0,pos);
//获取带"/"的项目名,如:/uimcardprj
var projectName=pathName.substring(0,pathName.substr(1).indexOf('/')+1);
return(localhostPaht+projectName);
function tongguo(id){
url:getRootPath()+'访问的地址',
data:"id="+id,
type:'post',
dataType:'text',
success:function(data){
alert(data);
var newurl=getRootPath()+'跳转的地址';
window.location.href=
error: function(error){
alert("失败!!!");
楼上几家,用的ajax都是简单方便的写法,很正解
window.location.href=url.
369关注|290收录
415关注|1135收录
1482关注|778收录
其他相似问题您所在的位置: &
Servlet与JSP间的传值问题
Servlet与JSP间的传值问题
chang_xing
chang_xing的博客
Servlet与JSP 之间的传值有两种情况:JSP -> Servlet, Servlet -> JSP。通过对象 request和 session (不考虑 application)完成传值。
Servlet与JSP 之间的传值有两种情况:JSP -& Servlet, Servlet -& JSP。
通过对象 request和 session (不考虑 application)完成传值。
一、JSP -& servlet
JSP页面有3种方法向 servlet传值: form表单、URL
&!--&JSP&page&--& &... &&%...... &session.setAttribute(&testSession&,&Hello&session&); &reqeust.setAttribute(&testRequest&,&Hello&request&); &%& &&a&href=&JspServlet?action=toServlet&&点击&/a& &&form&action=&JspServlet?action=toServlet&&method=&post&&name=&form&& &&input&name=&username&&type=&test&&/& &&input&type=&submit&&value=&submit&& &&/form& &...&
1、对于该JSP页面 form表单的内容,如 &input&标签,在 servlet可用 request.getParameter(&username&);获取。
2、URL:比如这里的 &a&标签的 href属性与 &form&标签的 action属性的值 &JspServlet?action=toServlet&,在 servlet同样用 request.getParameter(&action&)获取;所要注意的是这里的 url 要和 servlet在web.xml里的 &url-pattern&标签的路径所对应。这部分后面会提到。
3、java片段代码,servlet只能接到 session.setAttribute(&testSession&,&Hello session&)的内容,而接不到 request的内容。在 servlet里用 request.getSession().getAttribute(&testSession&)获取 session内容。
二、Servlet
1、关于 servlet,首先要提到它在 web.xml里的注册内容,如
&servlet-name&JspServlet1&/servlet-name& &&servlet-class&com.demo.JspServletDemo&/servlet-class& &&/servlet& &&servlet-mapping& &&servlet-name&JspServlet1&/servlet-name& &&url-pattern&/JspServlet&/url-pattern& &&/servlet-mapping& &&servlet-name&JspServlet2&/servlet-name& &&servlet-class&com.demo.JspServletDemo&/servlet-class& &&/servlet& &&servlet-mapping& &&servlet-name&JspServlet2&/servlet-name& &&url-pattern&/admin/JspServlet&/url-pattern& &&/servlet-mapping&&
假如 project name 是 jsp2servlet,则该 project根目录的 Context是 /jsp2servlet,在地址栏里显示是 ;
在 project 根目录下有 admin目录,对应的 Context是/admin/jsp2servlet,在地址栏里显示是 ,
在这两个目录下的 jsp 都想转到 com.demo.JspServletDemo类做处理,这时的 url需要在 web.xml注册两次。
1)在 http://localhost:8080/jsp2servlet/ 目录下的 jsp 页面 JspServlet1,url应写为 &JspServlet&
2)在 http://localhost:8080/jsp2servlet/admin/ 目录下的 jsp 页面访问 JspServlet2,url应写为 &admin/JspServlet&
2、在 servlet直接用 request对象,得到发送来的请求内容;用 request.getSession(),得到 session对象,从而得到会话内容。
这里的 request.getSession()的参数为 boolean 类型,该方法意思可理解为:
session可以认为是每一个IE进程对应一个会话(新开一个IE进程就可以对应两个会话的),getSession都是返回当前用户的会话对象,参数的区别在于:
参数为true (默认),则如果&当前用户的会话对象&为空(第一次访问时)则创建一个新的会话对象返回;
参数为false,则如果&当前用户的会话对象&为空,则返回 null (即不自动创建会话对象)。
利用这个方法可以判断 session是否过期,如下:
if(request.getSession(false)==null) &System.out.println(&Session&has&been&invalidated!&); &else&System.out.println(&Session&is&active!&);&
三、Servlet -& JSP
从 servlet转到 jsp不外乎两种方法,重定向 和 url转发
1、重定向 ( Redirect):是路径的跳转,内容和 url都改变。不允许带 request参数( session参数可以),即不允许在 servlet里给 request对象使用setAttribute方法传给下一页面。在 servlet里使用 response.sendRedirect(url) 方法。注意这里的 url前不带斜线 /,如 response.sendRedirect(&test.jsp&)
2、url转发 ( Forward):是页面的跳转,页面内容发生改变,url不变。可以带 request和 session参数。在 servlet里使用 getServletConfig().getServletContext().getRequestDispatcher(url).forward(request, response)。而这里的 url前需要带斜线 /,如getServletConfig().getServletContext().getRequestDispatcher(&/test.jsp&).forward(request, response)
String&fr=&good&well&; &request.setAttribute(&test&,&fr); &RequestDispatcher&de=request.getRequestDispatcher(&/test.jsp&); &de.forward(request,&response);&
原文链接:【编辑推荐】【责任编辑: TEL:(010)】
关于&&&&的更多文章
又是一周匆匆而过。上周五、周六两天,2013年51CTO云计算架构师
作为移动开发者,WOT2016移动互联网技术峰会,绝对有你不得不来的理由。
、27日,在美国圣何塞举行的Hadoop Summit
首先给大家说说小编一直在玩的游戏--植物大战僵尸。前
外行说“大数据”、内行用“大数据”。不知道大数据,
针对Ajax技术的日益流行,本书对Ajax技术的典型应用进行了归纳总结,基本上覆盖了Ajax技术应用的典型场景。书中共有45个实例,分
51CTO旗下网站jsp页面加载时,怎么立即将servlet的内容展现在页面上
[问题点数:40分,结帖人Mr_canglaoshi]
jsp页面加载时,怎么立即将servlet的内容展现在页面上
[问题点数:40分,结帖人Mr_canglaoshi]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
2016年1月 Java大版内专家分月排行榜第二2015年12月 Java大版内专家分月排行榜第二2015年8月 Java大版内专家分月排行榜第二2015年3月 Java大版内专家分月排行榜第二2015年1月 Java大版内专家分月排行榜第二2014年12月 Java大版内专家分月排行榜第二2014年11月 Java大版内专家分月排行榜第二2014年6月 Java大版内专家分月排行榜第二2014年4月 Java大版内专家分月排行榜第二2014年1月 Java大版内专家分月排行榜第二2013年11月 Java大版内专家分月排行榜第二
2015年9月 Java大版内专家分月排行榜第三2015年6月 Java大版内专家分月排行榜第三2015年5月 Java大版内专家分月排行榜第三2015年2月 Java大版内专家分月排行榜第三2014年3月 Java大版内专家分月排行榜第三2013年12月 Java大版内专家分月排行榜第三
2013年10月 总版技术专家分月排行榜第三
2014年3月 Java大版内专家分月排行榜第一2014年1月 Java大版内专家分月排行榜第一2013年12月 Java大版内专家分月排行榜第一2013年11月 Java大版内专家分月排行榜第一2013年10月 Java大版内专家分月排行榜第一
2013年11月 扩充话题大版内专家分月排行榜第二
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。> ajax+jsp+servlet 兑现动态显示系统当前时间
ajax+jsp+servlet 兑现动态显示系统当前时间
muxiyu & &
发布时间: & &
浏览:3 & &
回复:0 & &
悬赏:0.0希赛币
ajax+jsp+servlet 实现动态显示系统当前时间
  1. showCurrentTime.jsp
  &%@ page language="java" contentType="text/ charset=gb2312"
pageEncoding="gb2312"%&
&!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ""&
&meta http-equiv="Content-Type" content="text/ charset=gb2312"&
&title&动态显示系统当前时间&/title&
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
function createXMLHttpRequest(){
if(window.ActiveXObject){
xmlHttp = new ActiveXObject("Microsoft.XMLHttp");
}else if(window.XMLHttpRequest){
xmlHttp = new XMLHttpRequest();
function exec(){
createXMLHttpRequest();
xmlHttp.open("post","&%=basePath %$>$+"timeUpdate",true);
xmlHttp.onReadyStateChange = handleF
xmlHttp.send(null);
function handleFun(){
if(xmlHttp.readyState == 4){
if(xmlHttp.status == 200){
document.getElementById("div").innerText = xmlHttp.responseTEXT;
setInterval("exec()",1000);
TimeUpdateServlet路径:&%=basePath %&
&div id="div"$>$/div&
  2. TimeUpdateServlet.java
  package com.ibm.user.
import java.io.IOE
import java.io.PrintW
import java.text.DateF
import java.text.SimpleDateF
import java.util.D
import javax.servlet.ServletE
import javax.servlet.http.HttpS
import javax.servlet.http.HttpServletR
import javax.servlet.http.HttpServletR
public class TimeUpdateServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("gb2312");
response.setContentType("text/charset=gb2312");
Date date = new Date();
DateFormat dformater = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String currentTime = dformater.format(date);
PrintWriter out = response.getWriter();
out.println(currentTime);
out.flush();
out.close();
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request,response);
  3.web.xml
  & xml version="1.0" encoding="UTF-8" &
&web-app xmlns:xsi="" xmlns="" xmlns:web="" xsi:schemaLocation="" id="WebApp_ID" version="2.5"&
&display-name&xg3&/display-name&
&description$>$/description&
&display-name&TimeUpdateServlet&/display-name&
&servlet-name&TimeUpdateServlet&/servlet-name&
&servlet-class&com.ibm.user.web.TimeUpdateServlet&/servlet-class&
&/servlet&
&servlet-mapping&
&servlet-name&TimeUpdateServlet&/servlet-name&
&url-pattern&/timeUpdate&/url-pattern&
&/servlet-mapping&
&/web-app&
本问题标题:
本问题地址:
温馨提示:本问题已经关闭,不能解答。
暂无合适的专家
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&如何实现jsp页面输入的日期提交给两个servlet。一个是查询,一个导出excel - 开源中国社区
当前访客身份:游客 [
当前位置:
&& &&& &&& &&&&&
&& &&& &&& &&th&请输入账期(格式:201412)
&& &&& &&& &&th&&input name="acct_month" type="text"&&&&&
&& &&& &&& &&& &&button onclick="alert('detail.jsp')"&查询&/button&
&& &&& &&& &&& &&button onclick="alert('servlet/detailExcelServlet')"&导出表格&/button&&&
&& &&& &&& &
&& &&& &&/form&
共有10个答案
<span class="a_vote_num" id="a_vote_num_
图森破 用js提交 不同按钮提交到不同servlet
<span class="a_vote_num" id="a_vote_num_
这个不错,怎么写呢?
<span class="a_vote_num" id="a_vote_num_
查询走查询的servlet嘛,导出走导出的servlet嘛。
<span class="a_vote_num" id="a_vote_num_
是那样的。但是我第一次遇到,不知怎么写。单独的我倒是会
<span class="a_vote_num" id="a_vote_num_
写两个按钮点击事件。
<span class="a_vote_num" id="a_vote_num_
请贴下代码,不会写呢
<span class="a_vote_num" id="a_vote_num_
解决啦,谢谢各位。大家的答案都有道理我就不单独引用谁的了哈。再次感谢。
<span class="a_vote_num" id="a_vote_num_
&script type="text/javascript" src="js/jquery-1.7.2.js"&&/script&
&script type="text/javascript"&
$(function() {
$("form button").on("click", fun);
function fun() {
$("form")[0].action = this.
$("form").submit();
给你的两个button取上id属性,名字和servlet映射的名字一样就行了
--- 共有 4 条评论 ---
: 同时提交什么,二个按钮,查询是根据日期进行查询,导出是根据日期先查询再导出,在导出的Servlet中增加一个参数就是日期,然后传入日期,查询将结果直接导出
不同的是查询是将结果返回到前台页面,导出是将查询结果生成Excel给用户下载
(2年前)&nbsp&
: 能否写全?servlet/detailExcelServlet是下载excel的
(2年前)&nbsp&
: 上面的就可以啊,id你取名servlet的映射名就可以了
(2年前)&nbsp&
谢谢你的答案。追问一下,怎么同时提交呢?但是导出的地方要点击的时候才能触发。(效果就是:输入一个日期,进行查询,查看之后直接点击导出就是导出excel)
(2年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
&&&button id=""& onclick="alert('detail.jsp')"&查询&/button&
&& &&& &&& &&& &&button &id="" &onclick="alert('servlet/detailExcelServlet')"&导出表格&/button&&&
id的取名就是“如果你只写一个servlet的话,对应的form表单的action”,这样就可以了,该怎么说呢,我也是初学者,表达的不好,要不再听听其他人的看法,不好意思,我不知道该怎样把自己的想法表达出来
--- 共有 1 条评论 ---
额,是提交给两个,意识detail.jsp
另一个是servlet/detailExcelServlet。
(2年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
额,是提交给两个,意识detail.jsp& 另一个是servlet/detailExcelServlet。
更多开发者职位上
有什么技术问题吗?
随风香飘飘的其它问题
类似的话题

我要回帖

更多关于 ajax传值到servlet 的文章

 

随机推荐