if("ts".equals(name)&&"123456".equals(password)){
out.println("登录成功!");
request.getRequestDispatcher("index.jsp");
}else{
out.println("用户名或密码错误");
//request.getRequestDispatcher("Ajax/sale.html");
response.sendRedirect("sale.html");
//response.sendRedirect(request.getContextPath() + "/Registe.html");
//request.getRequestURI()/Ajax/Weibo.html
}
各种方法都试了
request.getRequestDispatcher()根本不响应
求解,如何在验证用户名完成后直接跳转到一个新的jsp或者html文件
求大神解答。

解决方案 »

  1.   

    response.sendRedirect(“/index.jsp”);
    request.getRequestDispatcher(“/index.jsp”).forward(request,response);servlet页面跳转一般就是这两种
      

  2.   

    你的request.getRequestDispatcher()没有写forward,当然不会跳转啦
    应该这样写
    request.getRequestDispatcher("/a.jsp").forward(request, response);
      

  3.   

    还是不可以,如果用request.getRequestDispatcher("Ajax/sale.html").forward(request, response);根本不响应就一直处在检查的状态
      

  4.   

    貌似是你的sale.html路径写错了
      

  5.   

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title></title>
    <link rel="stylesheet" type="text/css" href="css/normalize.css" />
    <link rel="stylesheet" type="text/css" href="css/demo.css" />
    <!--必要样式-->
    <link rel="stylesheet" type="text/css" href="css/component.css" />

    <script type="text/javascript" src="JS/jquery-1.11.0.js"></script>
    <script type="text/javascript" src="JS/jquery-1.9.1.min.js"></script>
    <script type="text/javascript" src="JS/prototype-1.6.0.3.js"></script>
    <script type="text/javascript">
    function getXhr() {
    var xhr = null;
    if(window.XMLHttpRequest) {
    xhr = new XMLHttpRequest();
    } else {
    xhr = new ActiveXObject("Microsoft.XMLHttp");
    }
    return xhr;
    }

    function getText() { //1.获取Ajax对象
    var xhr=getXhr();
    //2.设置回调函数
    xhr.onreadystatechange=function(){
    if(xhr.readyState==4&&xhr.status==200){
    var txt=xhr.responseText;
    }
    };
    //3.创建请求
    xhr.open("post","post_text.do",true);
    xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded");
    //4.发送请求
    xhr.send("uname=DR.");
    } function check() { //1.获取Ajax对象
    var xhr=getXhr();

    //2.设置回调函数
    xhr.onreadystatechange=function(){
    if(xhr.readyState==4&&xhr.status==200){
    document.getElementById("name_msg").innerHTML=xhr.responseText;
    }
    };
    //3.创建请求
    xhr.open("post","check_admin.do",true);
    xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    document.getElementById("name_msg").innerHTML="正在检查....";
    var uname=document.getElementById("logname").value;
    var upassword=document.getElementById("logpass").value;
    //4.发送请求
    xhr.send("uname="+uname+"upassword="+upassword);
    //window.location.href="http://localhost:8080/Ajax/Registe.html";
    }
    </script>
    </head> <body>
    <div class="container demo-1">
    <div class="content">
    <div id="large-header" class="large-header">
    <canvas id="demo-canvas"></canvas>
    <div class="logo_box">
    <h3>欢迎来到我的微博</h3>
    <form action="#" name="f" method="post">
    <div class="input_outer">
    <span class="u_user"></span>
    <input name="logname" id="logname" class="text" style="color: #FFFFFF !important" type="text" placeholder="请输入账户">
    </div>
    <div class="input_outer">
    <span class="us_uer"></span>
    <input name="logpass" id="logpass" class="text" style="color: #FFFFFF !important; position:absolute; z-index:100;"value="" type="password" placeholder="请输入密码">
    </div>
    <div class="mb2"><a class="act-but submit" href="javascript:;" style="color: #FFFFFF" onclick="check();"/>登录</a></div>
    <div class="mb2"><a class="act-but submit" href="javascript:;" style="color: #FFFFFF" onclick="liulan();">游客</a></div>

    <span id="name_msg" style="color:red;"></span>

    </form>
    </div>
    </div>
    </div>
    </div><!-- /container -->
    <script src="JS/TweenLite.min.js"></script>
    <script src="JS/EasePack.min.js"></script>
    <script src="JS/rAF.js"></script>
    <script src="JS/demo-1.js"></script>
    </div>
    </body></html>
    求大佬解惑script里是根据老师代码照葫芦画瓢模仿的,求解惑。
      

  6.   

    前端用的是ajax异步登录,怎么能用request来跳转
    response.setContentType("text/xml;charset=UTF-8");
    PrintWriter out = response.getWriter();
    out.write("登录成功!");
    out.close();然后跳转页面要在前台回调方法里处理。要不就不用ajax,直接表单提交那就更简单
      

  7.   


    那如何调回前台,刚刚学习java还不太了解,上面代码的意思不就是输出登录成功四个字么?
      

  8.   

    if(xhr.readyState==4&&xhr.status==200){
    document.getElementById("name_msg").innerHTML=xhr.responseText;
    //用js操作浏览器跳转
    }
      

  9.   

    如何实在Ajax异步交换里实现页面的跳转转换啊
      

  10.   

    没加forward,只给了目标页面没有把请求和返回加进去,不算一次完整的http