我面临一个奇怪的问题。 我正在使用jquery与hibernate和mysql后端的简单博客应用程序。我只想在提交后立即显示帖子。 但它间歇性地工作,有时我需要刷新页面2-3次才能更新数据。 我正在并行监视MySQL数据库,可以看到数据立即更新。 我试图通过浏览器进行调试,可以看到jquery响应本身是不一致的。
这是我的js:
//Method to GET data
function loadUserPosts(){
$.ajax({
url: 'services/posts?OwnerID='+loggedInUserId,
method: 'get',
headers: { 'Accept': 'application/json' },
success: function(data) {
console.log("Data arrived");
for(var index in data){
var row = "<tr><td>"+data[index].postTitle+"</td><td>"+data[index].postVote+"</td><td><button onclick='myFunction()'>Answer/View</button></td></tr>";
$("#userTable").append(row);
}
}
});
console.log("loadUserPosts - Fired request");
}
$(document).ready(function() {
loadUserPosts();
});
//Method to POST data
function addPost(){
var title = $("#title").val();
var owner = loggedInUserId;
var postData = {
postTitle: title,
ownerID: owner
};
var jsonData = JSON.stringify(postData);
$.ajax({
url: 'services/posts',
method: 'post',
data: jsonData,
headers: { 'Accept': 'application/json', 'Content-type': 'application/json' },
success: function(data) {
console.log("Add done");
alert("Post added");
$("#postForm")[0].reset();
location.reload();
}
});
&#13;
<div class="docs-section" id="div_post_content">
<form id="postForm">
<label for="Question">Post a question here</label>
<textarea id="title" name="postTitle" class="u-full-width" placeholder="Question Title ..."></textarea>
<input class="button-primary" type="button" value="Submit" type="submit" onclick="addPost()"></input>
</form>
</div>
<div class="docs-section" id="allPosts">
<h6><b>Recent Questions</b></h6>
<table id=userTable></table>
</div>
&#13;
我在Tomcat 8.0上本地运行它。 有什么建议吗?
根据以下输入,我尝试了以下但是没有帮助:
$.ajaxSetup({
// Disable caching of AJAX responses
cache: false
});
&#13;