2013-04-10 25 views
0

所以,我在頁面上有一個鏈接,它調用一個小的jQuery函數,然後將其發佈到控制器,控制器在刷新頁面之前只運行一些SQL。Grails jquery帖子只能使用警報?

所有這些很好地工作,同時用很多警報等進行調試,以確保事情正在做我想做的事情。但是,一旦我刪除所有警報停止工作?!有任何想法嗎?你可以在下面的函數中看到註釋掉的警報,註釋掉沒有任何反應,沒有SQL更新,什麼都沒有。如果我將這個提醒添加回來,那麼它工作正常嗎?!

有沒有人遇到過這個問題或找到解決方法?有沒有一種方法/明顯的原因,爲什麼發生這種情況?乾杯!

jQuery函數

function reQueueTest(url, id){ 
    $.post(url, { id:id },function(data){ 
    }); 
    //alert("work!") 
    location.reload(true); 
} 

控制器

def reQueueTest(int id){ 
    def sql = new Sql(dataSource) 

    def rowID = id 
    sql.executeUpdate "update test_exec_queue set [State]='READY' where test_exec_queue_id=$rowID" 
    sql.close() 
} 

回答

0

編輯:

好,所以儘量在做方法重載:

function reQueueTest(url, id){ 
    $.post(url, { id:id },function(data){ 
     }).done(function() { location.reload(true); }) 
      .fail(function() { alert("error"); }) 
} 
+0

對不起我應該提到,我試過了,它似乎也沒有工作,沒有發佈/運行SQL或刷新頁面! :S – MorkPork 2013-04-10 16:18:10

+0

好的,看我的編輯。 – 2013-04-10 16:35:10

+0

嗯,有趣的是,當我嘗試這個時,我得到錯誤消息彈出!但是,如果我然後用第二次重新加載替換錯誤警報,然後重新加載罰款!所以無論是什麼原因導致它失效,它仍然在工作,所以看起來這個問題更多地出現在控制器的某個地方,但是現在這個工作很好,所以我很高興,歡呼! :) – MorkPork 2013-04-10 19:47:45