2013-09-26 102 views
2

我是ASP.Net的新手,這是我的第一個ASP項目。希望你不要介意我的問題對一些人來說是如此簡單。我正在編程Student's Forum使用AJAX自動更新表格

Comment.aspx中,我使用Repeater Control獲取所有評論(針對每個主題)並按時間降序顯示它們。

<asp: Repeater.... 
....// 
</asp: Repeater...> 

但是看起來這件事情並不簡單,因爲我成像了。我不僅要顯示該主題的所有評論,還要更新添加到數據庫中的註釋的時間。

我可以從SQL DB中將所有註釋成功加載到中繼器,但是我不知道如何在數據庫插入新行而不重新加載所有網頁時自動更新。

我建議使用AJAX,我試着找到電子書和一些文檔討論AJAX,但對我來說很難開始。我真的不知道如何在我的網頁上應用AJAX。

你能告訴我一些有用的文檔或一些例子,或者一些建議嗎?

回答

1

您可以將中繼器放在UpdatePanel下,而不是在每隔幾秒鐘後刷新一次。我將使用PageMethod或jquery(如果允許)來檢查計數是否更改,如果只有計數發生變化,我們可以創建一個非常輕的ajax方法,以便觸發updatePanel刷新。 http://encosia.com/easily-refresh-an-updatepanel-using-javascript/第一次加載頁面時,從數據庫中獲取記錄數並放入隱藏字段中。下一次進行ajax調用以獲取數據庫中的行數並比較它將保存在隱藏字段中的值,並且如果更改,將觸發updatepanel更新。你可以在這兩個方法中放置斷點,看看你的更新面板刷新是否正在發生。在後面的代碼中處理更新面板刷新並更新中繼器。

+0

謝謝,我會試着讓你知道結果請儘快:p –

+0

我這樣做了,我想知道如何測試結果,因爲網頁正在我的本地主機中運行,以手動方式,我在數據庫中插入一行(手動),然後返回到我的網頁 - - >它仍然不更新新行,直到我按F5重新加載頁面。 –

+0

@VyClarks我在答案中添加了幾種方法。請看一看 。確保你測試每個組件,比如Updatepanel刷新和獲取數據,第二個Ajax調用正在進行正確的檢查。 – Devesh

0

我可以弄清楚,你是web應用程序編程的新手,所以值得閱讀幾個主題來開始。對於Ajax經過這個鏈路http://www.w3schools.com/ajax/default.asp

有一個很好的JavaScript庫提供,這是非常有幫助的 - 「jQuery的」

你可能會經歷在這裏 - http://www.w3schools.com/jquery/jquery_intro.asp

您也可以轉到jQuery的網站了解更多信息以及如何將其納入您的項目。

+0

謝謝你,那個鏈接幫了我很多:p –

1

您可以點擊此鏈接。通過這個ARTICAL您還將瞭解AJAX

Refresh Grid After some interval

Gmail style update

希望這將有助於you.For更多幫助,請更新。

+0

謝謝你,讓我試試,我馬上回來^^ –

+0

好的,在這個例子中,我們在5秒後更新。您可以根據您的要求縮短這段時間。 – Sunny

+0

感謝Sunny,它爲我工作,但事先我只想在數據庫更改(新行插入)時更新它?它如何實現數據庫更改和自動更新? –