[ASP.Net] 配合 Javascript 返回前一畫面
轉自http://www.neo.com.tw/archives/000317.html
有很多時候,用 Javascript 的 window 物件來做返回是必須的,像是跨 Web Form 的畫面,參數傳遞很複雜的時候,用 window.histroy.back() 來返回是很方便的一件事。
但是 Web Form 裡面每一個動做都代表一次 Submit ,所以用 window.histroy.back() 很可能在使用者點選任一動作後,返回的都是同一個 Web Form,所以我們可以利用 Literal 來記住要返回前面的第幾頁。
aspx 的配置: (因為是往前跑,所以要加負號 - 喔!)
<script language="javascript">
var BackCount = -<asp:Literal id="litBackCount" runat="server">
</asp:Literal>;
</script>
<INPUT onclick="javascript:window.history.go(BackCount)"
type="button" value="返回">
VB.Net 範例:
Private Sub Page_Load(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles MyBase.Load
If Me.litBackCount.Text = "" Then
Me.litBackCount.Text = 0
End If
Me.litBackCount.Text += 1
End Sub
這樣就大功告成了! 如果是在跨 Web Form 的多個動作,只要點選返回,就能夠返回前一個 Web Form 了。