qq_41712950
qq_41712950
采纳率50%
2019-04-03 13:28 阅读 663
已采纳

jsp标签<% %>中的代码为什么运行不了?



用户名



密码




<%
String username=request.getParameter("username");
String password=request.getParameter("password");
if(username==null) username="";
out.println(username+password);
if(username.equals("张三")&&password.equals("123"))
{
%>
/jsp:forward
<%
}else{
%>

/jsp:forward
<% } %>

为什么跳转不到relogin.jsp?中间的out.print内容也不显示呢?
点击按钮提交后的页面URL是http://localhost:8088/20190403test/login.jsp?username=zs&password=sss&submit=%E6%8F%90%E4%BA%A4

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    qq_41007737 qq_41007737 2019-04-04 11:25

    将你需要跳转的链接地址用java组装一个from表单出来,然后输入到页面去,页面会自动提交form,如果需要带些参数过去,就new一个map,将参数和值分别put进去。

    // 生成表单并自动提交到支付网关。
    StringBuffer sbHtml = new StringBuffer();
    sbHtml.append("

    ");
    for (Map.Entry entry : map.entrySet()) {
    sbHtml.append("");
    }
    sbHtml.append("");
    sbHtml
    .append("document.forms[&#39;paysubmit&#39;].submit();");
    response.setCharacterEncoding("utf-8");
            PrintWriter writer = response.getWriter();
    writer.print(sbHtml.toString());
    writer.flush();
    writer.close(); 
    
    点赞 评论 复制链接分享
  • xsb_20171227 今天是星期五 2019-04-03 13:47

    jsp中的java代码会在jsp进行编译的时候就执行掉,然后在最终编译后的前台页面里是不会存在java代码的

    点赞 评论 复制链接分享
  • kinyulau kinyulau 2019-04-03 14:15

    跳转需要在java中处理,使用sendRedirect 等

    例如
    <%
    final String queryString = request.getQueryString();
    final String url = request.getContextPath() + "/login" + (queryString != null ? "?" + queryString : "");
    response.sendRedirect(response.encodeURL(url));%>

    或者写在js中,通过location之类的url方法

    点赞 评论 复制链接分享

相关推荐