我有一个ASP.NET按钮,但最近,我用一个标准的HTML按钮替换它…我需要做的是一个ASP.NET页面的回发,并确保一个方法被调用。
以前的按钮是一个ASP.NET按钮,所以我有这个事件:
Protected Sub btnCancelar_Click(ByVal sender As Object,ByVal e As System.EventArgs) UtilTMP.DispoSEObjects() Server.Transfer("~\Forms\test.aspx",True) End
但是我正在使用一个带有JavaScript ALERT的按钮,我最近更改为一个jQuery UI模态对话框,但是它不等待我回答这个问题..回发发生了一切…所以我决定改为标准的HTML按钮…但是我需要回传到ASP.NET页面并调用一个方法。
如果我只是回发它不会调用清理
Protected Sub Cleanup() UtilTMP.DispoSEObjects() Server.Transfer("~\Forms\test.aspx",True) End
解决方法
虽然您可以使用JQuery执行Postbacks,但最好调用Web方法(页面中的Web服务)。呼叫也可能更快,因为您不会发布整个页面ViewState。
我会遵循大卫·沃德在这里所说的:
http://encosia.com/2008/05/29/using-jquery-to-directly-call-aspnet-ajax-page-methods/