我在加载所有 javascript 文件的母版页上有一个 ScriptManager。但是,我发现我的一个文件变得太大,所以我决定将它分解为单独的文件,按功能问题分组。但是,这些文件似乎没有被加载。当我引用在新的 javascript 文件中声明的函数时,我得到一个空引用错误。
这是一个示例:我有 SignOff.js 和 SignOffTools.js。两者都在同一个目录中。SignOff.js 是原始的大文件。SignOffTools.js 是新文件。
我在母版页中有以下几行。
<asp:ScriptReference Path="~/Tabs/SignOff.js" />
<asp:ScriptReference Path="~/Tabs/SignOffTools.js" />
SignOff.js 中的所有内容都可以正常加载。但是,如果我在我的 ascx 文件中对 SignOffTools.js 函数进行任何引用,比如在 onclick 事件中,我会得到一个空引用异常。
在使用 Firebug 进行进一步调查后,看起来 SignOffTools.js 没有被加载。但我不知道为什么。
我完全不知所措。删除对旧版 SignOff.js 的引用会阻止它被加载。但是添加对任何新文件的引用不会导致它们被加载。我添加了对 ascx(选项卡)、aspx(页面)和母版页级别的 src 引用,但没有任何影响。我什至将 javascript 直接嵌入到选项卡中,但没有任何成功。但是,只要我将 javascript 复制到旧的 SignOff.js 文件中,一切都会正常工作。由于我看不出这种行为没有任何逻辑,我只能得出结论,这是某种恶毒精神的产物。我想下一步是让我用大蒜环我的电脑,然后用木桩穿过主板。