我创建了一个ASP.Net应用程序。我使用的是一个写在单独文件中的javascript。我在javascript文件中使用Var myvariableName ={}
。
我已将此文件包含在MasterPage中,并在我的aspx页面中访问myvariableName。
这在Google Chrome中运行良好,但是,在IE 8中,未处理的异常将被视为
myvariableName未定义。
错误显示为; 0x800a1391 - Microsoft JScript运行时错误:“Common”未定义
Common是我的javascript变量。
请协助我解决这个问题。
答案 0 :(得分:6)
您可能在执行外部脚本之前访问该变量。
请确保在文档完全加载后立即访问您的变量(例如$(document).ready(function(){...});
如果您使用jQuery)或尝试找出具有某些警报的真实执行顺序(shouldn't be browser-depentent,方式!)。
答案 1 :(得分:4)
如果您的代码已经在document.load
或$(document).ready(function)
,您可以随时使用
在通过
if (typeof myvariableName !== "undefined") {
// do stuff
}
有些时候在IE中发生了shit,并且当异步调用到位时,window.load会被特别搞砸。
答案 2 :(得分:2)
由于缺少分号,您可能会收到此错误。将代码更改为:
var myvariableName = {};
答案 3 :(得分:2)
在您访问自定义变量的asp页面中,使用以下代码包装代码:
var myvariableName = {};
window.onload = function(){
// your code here where you're accessing the variable
};