Internet Explorer未加载某些.js文件

Internet Explorer not loading some .js files

本文关键字:js 文件 加载 Explorer Internet      更新时间:2023-09-26

因此,我得到了这个aspx页面,其中包括4个javascipt文件,如:

<script src="Scripts/invoicePrimary.js" type="text/javascript"></script>
<script src="Scripts/invoiceBillOfLading.js" type="text/javascript"></script>
<script src="Scripts/invoiceCharge.js" type="text/javascript"></script>
<script src="Scripts/invoiceInvoice.js" type="text/javascript"></script>

每一个都定义了一个变量。invoicePrimary声明classPrimary,invoiceBillOfLady定义classBillOfLading

在本页的后面,我们将参考classPrimary,它将参考其他内容。问题是,只有一半是定义的。具体地,定义了classPrimaryclassCharge,而未定义classBillOfLadingclassInvoice

这只发生在IE中。IE9和IE9都充当IE8。整个网站都是为IE设计的,所以其余的东西在其他浏览器中不起作用,但这部分可以。有人有什么想法吗?编辑:注意,所有文件都会加载到Visual Studio的Script Documents文件夹中。

编辑:有问题的实际代码:

populateScreenFromObject: function() {
        if (invoiceFolder == null) return;
        if (invoiceFolder.BillOfLadings != null) classBillOfLading.AddList(invoiceFolder.BillOfLadings);
        if (invoiceFolder.Invoices != null) classInvoice.AddList(invoiceFolder.Invoices);
        if (invoiceFolder.Charges != null) classCharge.FirstTimeLoad(invoiceFolder.Charges);
        classInvoice.FirstTimeLoad();
        classCharge.DisableNonDraftRadios();
        classBillOfLading.Add(); // In case BOL number is prepopulated
    },

这是classPrimary中的一个函数,它是从主页面调用的,如下所示:classPrimary.PopulateScreen();此时,classCharge是这些类中唯一定义的一个。在此之前唯一发生的事情是从存储在隐藏字段中的json加载invoiceFolder数据。

事实证明,问题是没有加载的已开票*.js文件在最后一个函数的末尾有一个,所以它不希望结束。IE8忽略了这一点,其他浏览器也是如此,但IE9却大发脾气。

在真正的IE8中尝试一下。IE9在IE中造成了很多损坏。