使用$.post和action或servlet交互 URL出现 http://localhost:8080/../[object%20Object] 错误的问题解决

使用$.post时,如下所示:

$.post({
url : "./test/ajaxTest",
});

控制台报:There is no Action mapped for namespace [/] and action name [[object Object]] associated with context path [/项目名]. - [unknown location] 错误

在网页上调试时出现:http://localhost:8080/项目名/[object%20Object] 404 (Not Found) 错误

后来将$.post改为使用$.ajax,并且设置type:post,如下所示:

$.ajax({
type : "post",
url : "./test/ajaxTest",

});

错误解决。

后来想想是不是jQuery版本的问题,将jquery-1.4.js改为jquery-3.1.1.js,并且还是用$.post方法,发现没有错误。

综上所述:

  出现标题中的问题的原因:

  1、jquery包版本太低

  解决方法:

  1、将$.post改为使用$.ajax

  2、使用较高的jquery包版本

    建议:当不确定地址是否写对时,又出现了如题错误,首先改为使用$.ajax查看是否地址写错,若有错,则改之。若地址无误,则使用$.ajax应该是成功的。如果仍想使用$.post,那么只能使用较高版本的jquery包了。

 

posted @ 2017-04-05 17:12  京魂  阅读(18729)  评论(0编辑  收藏  举报