IE需要永远加载我的GridView
,因为Firefox几乎是即时的(我知道很惊讶;但你知道用户以及他们如何喜欢IE)。
我们有一个GridView
,当用户滚动到底部时,会将更多条目加载到列表中(基本上是延迟加载,而不是加载整个列表,它会加载20个条目,当您滚动到底部时,它会加载接下来的20)。但是就像我说的那样,它在IE和FF上的表现有很大差异。在IE上调试时,我一直都会遇到Javascript超时错误
在此代码块中:
function Sys$WebForms$PageRequestManager$_endPostBack(error, executor, data) {
if (this._request === executor.get_webRequest()) {
this._processingRequest = false;
this._additionalInput = null;
this._request = null;
}
var handler = this._get_eventHandlerList().getHandler("endRequest");
var errorHandled = false;
if (handler) {
var eventArgs = new Sys.WebForms.EndRequestEventArgs(error, data ? data.dataItems : {}, executor);
handler(this, eventArgs);
errorHandled = eventArgs.get_errorHandled();
}
if (error && !errorHandled) {
throw error;
}
}
这个错误AFAIK是我们实现延迟加载(摆脱超时)的原因。然而它似乎没有帮助,只是每次都运行时重复问题。注意:在我们上一次发布之前,它将加载所有数据而不是延迟加载。
同样在调试时,它似乎在IE上“加载”这段代码时循环:
Protected Overrides ReadOnly Property ControlSkins() As System.Collections.IDictionary
Get
Return Me.__controlSkins
End Get
End Property
我相信由于FF显示没有超时的数据,导致这种情况的任何内容都是IE特有的,并且可能与GridView
种群的其他实现相同。
但是我应该注意到,我并不认为FF会像IE那样与VS进行通信。这意味着我得到的警告(上面的屏幕截图)可能发生在FF和VS没有显示给我,但就像我说FF没有我们的页面问题。
跟进 [similar error q/a]:
在进一步测试之后,重复调用的ControlSkins()
方法(上面发布)就是它的值。它在HybridDictionary
和Nothing
我必须继续测试,但我认为/希望(手指交叉)在AsyncPostBackTimeout="300"
(对于该小部件)添加ScriptManager
已停止超时错误。当然,这对IE的大负载时间没有帮助。