使用ajax无法在我的控制器中获得价值? [重复]

问题描述 投票:0回答:1

这个问题在这里已有答案:

我不知道我是否问了正确的问题,但无论如何这是我的问题:我按照教程展示了如何使用Aje和Java ee,我做了一个简单的例子,它有效,但我试图应用我在我学到的东西项目,它没有工作,这是我的jsp文件:

<div class="aimerSection">
     <div class="aime">
     <form>
     <input type="hidden" class="adore1" name="aime" value="${post.id}">
     <input type="button" class="adore2" value="J'aime">
     </form>
     </div>
     <c:if test="${ post.adore == 0 || post.adore == 1 }">
     <div class="nbreAimes"><p><span class="nbrAdore">${ post.adore }</span> personne aime ça</p></div>
     </c:if>

     <c:if test="${ post.adore != 0 && post.adore != 1 }">
     <div class="nbreAimes"><p><span class="nbrAdore">${ post.adore }</span> personnes aiment ça</p></div>
     </c:if>

</div>

我想要的是通过单击我的按钮(输入按钮)获取隐藏输入中的值,所以这是我的jquery文件:

    $(".adore2").click(function(){
    var aime = $(this).parent().find(".adore1").val()
    var value=$(this).parent().parent().siblings().find(".nbrAdore").text()
    alert(value)

    $.ajax({
        type:"POST",
        data: {aime:aime},
        url:"acceuilServlet",
        success:function(result){
             $(this).parent().parent().siblings().find(".nbrAdore").html(result)
        }
    })

})

我想在控制台中看到结果(作为测试),所以这里是我的Controller(doPost方法)的一部分,但我得到任何响应。

    resp.setContentType("text/plain");

    int aime = Integer.parseInt(req.getParameter("aime"));
    aime++;
    System.out.println("hello "+aime);

任何帮助将非常感激。

java jquery ajax java-ee
1个回答
2
投票

首先,您需要在Web.xml中注册您的servlet,如下所示。然后它知道接受请求。

<web-app>
      <servlet>
        <servlet-name>yourServlet</servlet-name>
        <servlet-class>com.java.YourServlet</servlet-class>
      </servlet>

      <servlet-mapping>
        <servlet-name>yourServlet</servlet-name>
        <url-pattern>*</url-pattern>
      </servlet-mapping>
    </web-app>    
© www.soinside.com 2019 - 2024. All rights reserved.