我有這樣一段代碼:擊中刷新導致點擊事件,火災
<asp:Button runat="server" Text="Process Payment" />
當我點擊按鈕,頁面刷新這是罰款。但現在,當我在瀏覽器上按F5時,我的點擊事件再次被解僱,我可以擊中我的斷點。現在問題是這個按鈕是在它的點擊事件處理程序中聯繫支付網關。按刷新將請求再次發送到支付網關。請幫忙。我該怎麼辦?
重定向到同一頁面上解決了這個問題。但我不想這樣做。還有其他更好的選擇嗎?
我有這樣一段代碼:擊中刷新導致點擊事件,火災
<asp:Button runat="server" Text="Process Payment" />
當我點擊按鈕,頁面刷新這是罰款。但現在,當我在瀏覽器上按F5時,我的點擊事件再次被解僱,我可以擊中我的斷點。現在問題是這個按鈕是在它的點擊事件處理程序中聯繫支付網關。按刷新將請求再次發送到支付網關。請幫忙。我該怎麼辦?
重定向到同一頁面上解決了這個問題。但我不想這樣做。還有其他更好的選擇嗎?
我所知道的唯一的其他方法是使用AJAX。我們使用ajaxified Telerik控件。服務器端代碼觸發,但沒有完整的回發,所以我們可以不重新發布刷新頁面。
在我們的應用程序的其他部分,我們將使用它你不喜歡Response.Redirect方法。我也不喜歡它。
而且,這裏有一個鏈接,可以幫助:
這是因爲你刷新已發佈的頁面。這與按下後退按鈕時發生的情況相同,瀏覽器會再次發佈相同的表單。
避免這種情況,使用JavaScript來處理你的帖子之外的唯一辦法,就是重定向到同一個或另一個頁面完成後加工。
AJAX是在這樣的情況下要走的路。這是它在支付系統中如此受歡迎的原因之一。