2010-10-13 27 views
1

我有一个自定义控件,它是ASPxGridView的一个包装。这个自定义控件嵌套在UpdatePanel中。在其中的一列中,我添加了一个LinkBut​​ton,我通过调用ScriptManager.RegisterPostBackControl进行注册。在AsyncPostBack期间调用ScriptManager.RegisterPostBack

网格已启用分页功能。分页当然是在AsyncPostBack期间完成的。

当网格显示其第一页时,所有内容都按预期工作:单击按钮导致回传。

但是,如果当前页面不是第一个,单击该按钮一次不会导致回发,并再次单击(实际上单击该列中的任何按钮)会产生错误。

如果我注释掉在ScriptManager中注册按钮的行并在第一页上单击某个按钮,则会引发同样的错误。

因此,这导致我认为第一页中的按钮得到正确注册,因为这是在回发期间完成的,并且注册其他页面中按钮的注册失败(出于某种原因),因为它是在AsyncPostBack。

有什么想法?可能的解决方案?

在此先感谢

回答

0

我由ASPxGridViewEnableCallbacks属性设置为解决它。

0

我认为你需要重新注册你的Javascript控制在UpdatePanel后您的按钮。要做到这一点:

var prm = Sys.WebForms.PageRequestManager.getInstance();  
prm.add_initializeRequest(InitializeRequest); 
prm.add_endRequest(EndRequest); 

function InitializeRequest(sender, args) {  
} 

function EndRequest(sender, args) { 
} 

一定的pageLoad的后运行该stript,或脚本管理器之后,要给时间的页面加载Sys系统对象。

+0

感谢您的帮助。 – gabrielmaldi 2010-10-18 00:02:25

相关问题