无法在ajax中传输数据

时间:2015-04-01 12:58:30

标签: jquery ajax

我想做一个投票页面。当我点击"",投票金额加上但现在它符合" 404未找到"。(我的项目中没有vote2.jsp因为我只想刷新页面的一部分。)

vote.jsp
<body>
<div class="testSpan" data-id="1"><span>vote for A</span>  num:<em>0</em></div>
<div class="testSpan" data-id="2"><span>vote for B</span> num:<em>0</em></div>
<div class="testSpan" data-id="3"><span>vote for C</span> num:<em>0</em></div>
<div class="testSpan" data-id="4"><span>vote for D</span> num:<em>0</em></div>
</body>
ajax:
    $(".testSpan").click(function(){
    var xsId = $(this).attr("data-id");
    $.post("/vote/vote2",{
        xsId:xsId
    },function(data, textStatus){
        var xsMap = data.xsMap;
        $(".testSpan").each(function(){
            var id = $(this).attr("data-id");
            $(this).find("em").html(xsMap[id]);
        });
    }, "json");
});

Controller:
    @RequestMapping(value="/vote/vote2")
public net.sf.json.JSONObject vote(int xsId){
    net.sf.json.JSONObject json = new net.sf.json.JSONObject();
    userService.vote(xsId);
    json.put("xsMap", UserServiceImpl.xsMap);
    return json;
} 

1 个答案:

答案 0 :(得分:0)

您无需创建vote2.jsp文件。此错误也是有效的,因为您尚未在AJAX URL请求中指定上下文路径。

解决这个问题。

  1. 使用浏览器的开发者工具并找到引发的URL AJAX。
  2. 网址应包含上下文路径。
  3. 验证DispatcherServlet设置(如果您使用的是Spring)。请查看此post