【问题标题】:how to redirect to servlet with values如何使用值重定向到 servlet
【发布时间】:2015-02-22 01:12:33
【问题描述】:

我想从登录页面重定向到主页(.jsp),我想在主页中显示登录的值,我使用了 window.location.replace 但主页中的值为“null”.in我第一次将数据发送到 servlet 并且 servlet 重定向到主页。

登录.html

<form>
      <p><input type="text" id="login" ></p>  
     <p> <input type="button" value="LOGIN" id="log"  ></p>  
    </form>

login.js

 $(document).ready(function (){
$("#log").click(function (){
var log = $("#login").val();    

   $.post("Test",{log:log},function(){

 }).success(function (){

     window.location.replace("Test?log="+log) ;

  });

servlet:Test.java

String l =request.getParameter("log");

request.setAttribute("l", l);

getServletContext().getRequestDispatcher("/home.jsp").forward(request,response);

home.jsp

<body>
<% out.println(request.getAttribute("l")) ; %>
</body>

谢谢。

【问题讨论】:

  • 将文本添加到会话中。这也是在其他页面上发送数据的一种方式。
  • 你想达到什么目的?您可以简单地将 login.html 提交到 home.jsp 以获得登录值。
  • 我想使用servlet作为控制器,所有的html页面都向servlet发送请求,servlet重定向到不同的页面

标签: java javascript jsp servlets


【解决方案1】:

您必须使用 html 标签input 的属性name 来获取您的servlet 上input 的值

【讨论】:

  • 对不起,问题不存在,我想重定向到 servlet 并从 servlet 到主页,我想在主页.jsp 中显示输入文本的值跨度>
  • 您尝试在控制台中显示您在 servlet 中获得的内容?如果你没有得到带有他名字的参数,它将不起作用
【解决方案2】:
  1. 当您将表单数据从 ajax 请求发布到 Servlet 时,servlet 会发送带有来自 home.jsp 的内容的响应,但是它不能将浏览器重定向到 home.jsp,因为它是 ajax 请求。所以你需要手动(使用window.location.href属性)将浏览器重定向到home.jsp。

  2. 设置请求属性仅适用于每个请求。在您的情况下,它将在向您的 ajax 请求发送响应时首次工作,而不是在重定向到 home.jsp 时。所以使用会话级别的属性。

我建议进行以下代码更改:

login.js

 $(document).ready(function (){
$("#log").click(function (){
var log = $("#login").val();    

   $.post("Test",{log:log},function(){

 }).success(function (){

     window.location.href="home.jsp" ;

  });

servlet:Test.java

String l =request.getParameter("log");

request.getSession().setAttribute("l", l);

home.jsp

<body>
<%=session.getAttribute("l") %>
</body>

【讨论】:

  • 感谢您的建议,但我的主页中有“null”
  • @mass_develop 另外请发布登录html表单页面。
  • 感谢 vijay,我尝试了您更新的代码,但结果相同“null”,我也不明白“发布登录 html 表单页面”是什么意思
  • @mass_develop 我的意思是,发布使用 login.js 代码的登录页面代码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-16
  • 2015-07-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多