0

我有一个问题,有时当用户打开页面时,它似乎会闪烁并自行调整大小。查看日志,似乎多次调用了提交,但我不能 100% 确定,因为我无法在自己的环境中重现它。

下面的代码中是否有任何对您来说似乎不合适的内容,或者我可以检查以查明问题的任何内容。

编辑: .net 页面似乎一直在为页面提供服务,并且在 onload 事件上调用了随后的 submit() ,但它永远不会返回服务器。我们在一台机器上出现了这个错误,但在另一台相同的机器上没有。我想知道这是否可能是负载均衡器的问题。

编辑:我们终于能够重现这个错误。它与通过负载平衡器有关,但仍然不知道问题是什么。这个问题似乎也只是有时会发生,如果确实发生了,如果你关闭 IE 并重新打开它,它就有机会自行修复。

window.onload = function () {
        if (document.getElementById("hfPostBack").value != "true") {
            if (confirm('hfPostBackは:' + document.getElementById("hfPostBack").value + 'です.続行します')) {
                document.getElementById("hfPostBack").value = "true";
                document.forms[0].submit();
            }
        } else {
            alert('hfPostBackは:' + document.getElementById("hfPostBack").value + 'です');
        }
    }
4

2 回答 2

2
document.forms[0].submit();

如果代码正在提交的表单具有与表单所在页面相同的操作,那么这将导致无限循环。(加载-提交-加载-提交...)

于 2011-04-28T03:24:28.517 回答
0

事实证明,通过将 Web 应用程序的 IIS 安全设置从匿名登录更改为 Windows 身份验证,可以解决问题。

仍然不知道为什么会发生这种情况,但它似乎与负载均衡器传递身份验证信息/模拟有关。

于 2011-05-11T08:38:00.050 回答