Jquery提交无法提交到操作servlet

时间:2017-08-14 05:40:49

标签: javascript jquery jsp servlets

我无法通过单击另一个表单中的按钮来提交表单。当我点击按钮时,它不会被重定向到动作servlet,但它会重定向到同一页面,并带有这样的URL,

  

http://localhost:8080/OnlineDD/index.jsp/login.jsp

最后带了'?'。这个方法在我的示例项目中有效。

HTML代码

<form autocomplete="off">
    <label>Email</label>
    <input autocomplete="off" autofocus type="text" required="" id="emailIDForm1">

    </label>
    </div>
    <label>Password</label>
    <input autocomplete="off" type="password" min="6" required="" id="logPassId" />

    </div>
    <div>
        <button id="submitForm" class="btn btn-primary">LOGIN</button>
    </div>
    </div>
</form>
<form action="LoginServlet" method="post" id="SecFormLogin" style="display:none">
    <input type="text" name="emailId" id="emailIdForm2" />
    <input type="password" name="password" id="passForm2" />
</form>

Jquery 代码

<script>
    $(document).ready(function() {
        $('#logPassId').change(function() {
            var password= $(this).val();
            $('#passForm2').val(password );
        });
        $('#emailIDForm1').change(function() {
            var email= $(this).val();
            $('#emailIdForm2').val(email);
        });
        $("#submitForm").click(function() {
            $("#SecFormLogin").submit();
        });
    });
</script>

Servlet 代码是,

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    System.out.println("Called post");}

1 个答案:

答案 0 :(得分:0)

您需要部署描述符(web.xml)

<servlet>
  <servlet-name>servletName</servlet-name>
  <servlet-class>packageName.servletName</servlet-class>
</servlet>

<servlet-mapping>
  <servlet-name>servletName</servlet-name>
  <url-pattern>/yourServletUrl</url-pattern>
</servlet-mapping>

或者,自servlet 3.0起,您可以在Servlet中使用注释。

import javax.servlet.annotation.WebServlet;

@WebServlet(name = "servletName", urlPatterns = { "/yourServletUrl" })
public class servletName extends HttpServlet {