永远加载 Firefox 中的更新面板
Update Panel in Firefox loading forever
我有 2 个 select 控件。一个更改事件更新另一个。此外,它还会更新更新面板内的网格。
在页面加载时,我调用 ajax 方法来获取两个 select 的下拉值。我填充控件并触发按钮单击事件,然后更新更新面板内的网格。
在所有浏览器中一切正常,Firefox 除外。知道为什么会发生这种情况吗?
使用断点后,我发现在其他浏览器中首先调用服务器端方法,然后调用 ajax 方法,而在 Firefox 中则相反。
我将问题缩小到使用 EndRequestHandler 时。我使用 EndRequestHandler 事件来更改控件的 class。我删除了该功能并且它很完美。它的代码如下:
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); function EndRequestHandler()
{
var type = $('[id$=ddlType]').val();
$('a[data-categoryid="' + type + '"').parent().addClass('selected');
}
最后,我的代码中有一个拼写错误。我忘记了 EndRequestHandler 中的右方括号。令人惊讶的是,其他浏览器并不关心它!
更新代码。
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); function EndRequestHandler()
{
var type = $('[id$=ddlType]').val();
$('a[data-categoryid="' + type + '"]').parent().addClass('selected');
}
我有 2 个 select 控件。一个更改事件更新另一个。此外,它还会更新更新面板内的网格。
在页面加载时,我调用 ajax 方法来获取两个 select 的下拉值。我填充控件并触发按钮单击事件,然后更新更新面板内的网格。
在所有浏览器中一切正常,Firefox 除外。知道为什么会发生这种情况吗?
使用断点后,我发现在其他浏览器中首先调用服务器端方法,然后调用 ajax 方法,而在 Firefox 中则相反。
我将问题缩小到使用 EndRequestHandler 时。我使用 EndRequestHandler 事件来更改控件的 class。我删除了该功能并且它很完美。它的代码如下:
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); function EndRequestHandler()
{
var type = $('[id$=ddlType]').val();
$('a[data-categoryid="' + type + '"').parent().addClass('selected');
}
最后,我的代码中有一个拼写错误。我忘记了 EndRequestHandler 中的右方括号。令人惊讶的是,其他浏览器并不关心它!
更新代码。
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); function EndRequestHandler()
{
var type = $('[id$=ddlType]').val();
$('a[data-categoryid="' + type + '"]').parent().addClass('selected');
}