来自jquery的反应不一致

时间:2015-09-19 14:46:51

标签: javascript jquery mysql hibernate

我面临一个奇怪的问题。 我正在使用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;
&#13;
&#13;

我在Tomcat 8.0上本地运行它。 有什么建议吗?

根据以下输入,我尝试了以下但是没有帮助:

  1. 在JS文件中添加以下内容
  2. &#13;
    &#13;
    $.ajaxSetup({
        // Disable caching of AJAX responses
        cache: false
    });
    &#13;
    &#13;
    &#13;

    1. 在解雇HQL查询之前调用session.clear()!!

0 个答案:

没有答案