我遇到了问题,我不知道原因是什么。我正在使用此代码测试ajax请求。
function sendAJAX() {
var dataToSend = {};
dataToSend["username"] = $("#username").val();
dataToSend["age"] = $("#age").val();
dataToSend["date"] = $("#date").val();
$.ajax({
type : "POST",
contentType : "application/json",
url : "dotheajax",
data : JSON.stringify(dataToSend),
dataType : "json",
success : function(response) {
$("#typeAjaxHere").html(response);
}
});
}
$("#form").submit(function (event) {
event.preventDefault();
sendAJAX();
})
<div id="form">
<form id="user_form">
<label for="username">Name</label>
<input type="text" name="username" id="username">
<label for="age">Age</label>
<input type="text" name="age" id="age">
<label for="date">Birth date</label>
<input type="text" name="date" id="date">
<input type="submit" value="Submit">
</form>
@Controller
public class AjaxControllers {
@RequestMapping(value = {"dotheajax"}, method = RequestMethod.POST)
public @ResponseBody String testAjax(@RequestBody HumanDomain humanDomain) {
System.out.println(humanDomain.getUsername());
System.out.println(humanDomain.getAge());
System.out.println(humanDomain.getDate());
return "Success";
}
}
public class HumanDomain {
String username;
int age;
String date;
//getters and setters here
}
IntelliJ IDEA标志着AJAX成功与未成熟的财产成功&#34;在成功的身体中没有任何明显的事情发生。我真的不知道为什么。请求工作正常,在控制台我得到了期待的结果。我的其他类似的AJAX函数可以工作,但我不会在那里发送任何JSON数据,而是GET而不是POST。 任何建议将非常感激。 附:错误和完成也标记为未使用。
答案 0 :(得分:4)
我看到同样的错误,但似乎是肤浅的,这意味着它不会影响功能。
为了使错误消失,我用括号包围了函数,使它成为一个包含一个函数的数组,并验证它。
示例:
$.ajax({
type : "POST",
contentType : "application/json",
url : "dotheajax",
data : JSON.stringify(dataToSend),
dataType : "json",
success : [
function(response) {
$("#typeAjaxHere").html(response);
}
]
});
&#34;从jQuery 1.5开始,成功设置可以接受一系列功能。每个函数将依次调用。&#34;