2012-06-20 38 views
-2

我在我的網站上有一個可以添加評論的博客頁面。事實是,當你點擊「添加評論」時,有php服務器請求來存儲評論。所以頁面再次加載並滾動到頂部。添加評論時是否有任何javascript方法來維護頁面?使用javascript修復頁面?

最佳

+0

您可以通過AJAX添加評論,因此無需重新加載頁面。或者,您可以使用URL中的錨點將用戶跳回到(幾乎)相同的位置。 – Matt

+0

您需要使用AJAX – swapnesh

+0

使用AJAX無法重新加載整個頁面,或添加在頁面加載後將頁面滾動到正確位置的JavaScript。 – Matzi

回答

2

有這樣做雙向的:

1)的URL請求後使用錨名頁面,並使用該名稱作爲錨點,位於評論下面。 所以重定向到你的頁面的錨名www.mysite.com/mypage.php#comments和廣告在你的HTML錨:

<a name="comments" /> 

,這將打開頁面設置在頂部的錨DOM元素的屏幕。

2)用ajax向服務器發送數據,並在檢索成功的回調時更新註釋。該頁面不需要以這種方式重新加載並保持在原來的位置。但多一點工作。 步驟1:製作一個處理請求並保存評論的php頁面 第2步:添加javascript以創建ajax調用並檢索回調

祝您好運!

0

您可以撥打您的評論按鈕,此功能單擊

function FUNCTIONNAME() { 
    $.ajax({ 
     type: "POST", 
     url: "YOUR METHOD NAME WHICH IS CALLED", 
     data: "{PARAMETER VALUES TO BE PASSED}", 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     complete: function() { 
     }, 
     success: function (msg) {      
      alert("YOUR SUCCESS MESSAGE HERE"); 
     }, 
     error: function (msg) { 
      alert("Error "); 
     } 
    }); 
} 
+0

只有jQuery ... – madflow

+0

@madflow naah你也可以使用JAVASCRIPT和AJAX ...我只是讓我有點簡單;) – swapnesh

+0

我知道對不起 - 你的例子使用jQuery對象。那就是我的意思;) – madflow

1

你能用cookies嗎?我有一個非常類似的問題,但關於文本框。在點擊「保存」(從而重新加載網頁)後,它總是從第一行開始,而不是在結束編輯的那一行。

解決方案是僱用cookies。當用戶點擊「保存」時,一個簡單的JavaScript代碼正在編寫一個包含編輯器上光標位置的cookie。然後,在重新加載之後,另一個簡單的JavaScript讀取該cookie並將光標設置回最後一個位置。

也許你可以根據自己的需要調整此解決方案?

+0

這聽起來很有趣。謝謝 ! – Newben