我的 mozilla 火狐浏览器有问题。
我正在使用 ASP.NET 语言开发一个网站,并且在表单中有一个按钮。当我单击 onclick 属性上的按钮时,我正在调用一个函数,并且该函数执行回发。
此场景适用于 Chrome 和 Internet Explorer。但它在 mozilla firefox 上不起作用。我在控制台中收到此错误:TypeError:对严格模式调用者函数的访问已被审查。
我的示例按钮是:
<input id="Button1" type="button" onclick="sampleFunc('sample');" value="button" />
我的示例函数是:
function sampleFunc(reqMessage)
{
__doPostBack('', reqMessage);
}
我在互联网上搜索。而且很多人都有这个问题,但是没有任何解决办法。
您对这个错误有任何解决方案吗(!)
EDIT 1:我找到了一个ticket http://bugs.jquery.com/ticket/13335在 jquery 网站上。根据票证,修复了该错误。但我应用了相同的解决方案,但我的错误仍然存在。 :(
ASP.Net ScriptManager 代码使用 __doPostBack 中的“caller.callee”遍历调用堆栈以检测无限递归。如果调用堆栈中的任何函数是在应用“use strict”的情况下进行解析的,那么在 FireFox 上将会失败。
解决方法是在“use strict”范围之外使用一个函数来调用setTimeout()
调用一个函数,该函数调用__doPostBack
. setTimeout()
让你脱离调用堆栈。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)