【发布时间】:2011-02-10 13:35:54
【问题描述】:
我在 2 个单独的项目中遇到了一个似乎令人讨厌的 asp.net UpdatePanels 错误。如果您有某种启用了自动回发的控件,它会导致更新面板中的所有控件都设置为 visible=false,从而导致更新面板为空。
当您将自动回发控件更改回将重新启用更新面板中的所有控件的位置时,它根本不会回调服务器并且更新面板不会更新。
如果您在同一页面上进行其他任何回调,那么更新面板内容会神奇地出现。就好像 asp.net 已经决定更新面板是空的,所以没有必要进行回调,即使进行回调会使更新面板充满内容。
解决此问题的唯一方法是向控件添加display:none 样式,而不是设置visible=false 属性。
然后就可以正常使用了。
还有其他人遇到过这个问题吗?这是我怀疑的错误还是我做错了什么?目前我没有时间发布示例代码,因为我正在使用的代码过于包含在其他未实现的事物中,如果人们认为这会有所帮助,我将创建一个简单的示例并在有时间时发布。
【问题讨论】:
-
AutoPostback 控件在哪里?在更新面板里面?什么时候设置 IsAutoPostBack = true?
-
自动回发在更新面板之外。 AutoPostBack = true 在标记中设置。
标签: .net asp.net updatepanel