Dotnetnuke模块Javascript命名空间
我有两个dotnetnuke模块,它们引用Javascript函数调用。我想从Jaco Pretorius的回答中使用这个名称空间解决方案,这可以追溯到本文档: 但我的实现不起作用。我已经找了几个小时了,但找不到问题。如果我从Module1调用函数ns.testfunc,那么它就工作了。但从模块2来看,它不起作用 我的示例代码: 模块1中的Javascript代码:Dotnetnuke模块Javascript命名空间,javascript,jquery,dotnetnuke,dotnetnuke-module,Javascript,Jquery,Dotnetnuke,Dotnetnuke Module,我有两个dotnetnuke模块,它们引用Javascript函数调用。我想从Jaco Pretorius的回答中使用这个名称空间解决方案,这可以追溯到本文档: 但我的实现不起作用。我已经找了几个小时了,但找不到问题。如果我从Module1调用函数ns.testfunc,那么它就工作了。但从模块2来看,它不起作用 我的示例代码: 模块1中的Javascript代码: (function(ns, $ , undefined){ ns.testfunc = function(param){
(function(ns, $ , undefined){
ns.testfunc = function(param){
alert ("ns.testfunc, param: " + param);
};
}(window.ns = window.ns || {}, jQuery));
模块2中的Javascript代码:
(function (ns, $, undefined) {
ns.testfunc("call from other .ascx");
}(window.ns = window.ns || {}, jQuery));
但我收到了这个错误:
中第241行第9列的未处理异常
0x800a01b6-JavaScript中的Laufzeitfehler:Das Objekt unterstützt die
“测试函数”法
其中一个模块也有第三方代码,这似乎是另一个问题。我现在用新的模块进行了尝试,它正在工作。所以我必须深入一点…我按照给定的顺序执行了您的脚本,没有出现错误您在两个不同的模块中执行了它?您对模块的意思是什么?我只是将您的代码复制粘贴到控制台并执行它