java - Servlet的响应不刷新JSP

标签 java jquery ajax jsp servlets

我想在同一页面中打印 servlet 的响应而不刷新页面。我写了这段代码,但我不明白为什么它打开页面:http://localhost:8080/..../NewServlet.do而不是在同一页面中显示结果。

       <html>
       <head>
       <script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>

  <script type="text/javascript">

  var form = $('#form1');
  form.submit(function () {

   $.ajax({
   type: form.attr('method'),
   url: form.attr('action'),
   data: form.serialize(),
   success: function (data) {
   var result=data;
   $('#result').attr("value",result);

      }
    });

    return false;
    });  </script>
  </head>
     <body>
     <form name=form1 action="NewServlet.do" method="post">
   <select id='choose' class='form-control' name='choose'>
<option value='prodotti'>Products</option>
<option value='login'>Objects</option>
 </select>
<button type='submit' class='btn btn-default' style="width:  40%;">SUBMIT</button>

     <div id='result'>
      ///  I want the servlet's response is placed here.
   </div>

    </form>
   </body>
   <html>

我的servlet

     protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

        response.setContentType("text/html");
        String i = request.getParameter("choose");
        PrintWriter out = response.getWriter();
        out.println("<br>"+i+"</br>");

      }

最佳答案

它实际上不是关于Java或JSP的,而是关于JavaScript的。尝试一下

form.submit(function (event) {
  event.preventDefault(); // magic!
  $.ajax({
    type: form.attr('method'),
    url: form.attr('action'),
    data: form.serialize(),
    success: function (data) {
      var result=data;
      $('#result').attr("value",result);
    }
  });
  return false;
});

关于java - Servlet的响应不刷新JSP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38741731/

相关文章:

Java Resultset.get***(...) 通过字符串或 int 更快?

javascript - 更新 jquery 关联数组值

jquery - 显示错误/警告的最佳方法是在MVC中使其显示或传递自定义属性?

javascript - 在javascript中获取DIV的宽度和高度

javascript - AJAX 未将图像上传到后端服务

java - 在 Java IDE 上调试 3D 应用程序时如何防止鼠标抓取?

java - java.awt 矩形的动画未按预期运行

java - 为什么 NetBeans 会警告将 int[] 传递给 vararg?

javascript - 欧芹 - 根据 li 的值隐藏/显示 block

javascript - 如何在 javascript 中捕获 php session 变量而不刷新页面?