怎么在JS文件的函数里再调用另一个JS文件中的函数?

时间:2021-12-02 07:24:40
function calendar_date() {
document.body.appendChild("<scri"+"pt type='text/javascript' src='Include/DateCalendar.js'></scr"+"ipt>"); 
alert("test!");
return calendar();
}


点击按钮,触发calendar_date函数,调用DateCalendar.js文件中的calendar函数
我用上面这个方法提示return calendar();这行类型不匹配

14 个解决方案

#1


可以在网页里面导入JS文件

#2


首先要把2个js文件顺序引入

function calendar_date() {
    document.body.appendChild("<scri"+"pt type='text/javascript' src='Include/DateCalendar.js'></scr"+"ipt>"); 
    alert("test!");
   //calendar() 这个函数有没有返回值?
    return calendar(); //alert(calendar());
}
这样写可能有作用域的问题。

#3


就是想通过这个函数导入JS文件再调用JS文件里的函数,应该要怎么写啊?
引用 2 楼 zoujp_xyz 的回复:
首先要把2个js文件顺序引入

function calendar_date() {
    document.body.appendChild("<scri"+"pt type='text/javascript' src='Include/DateCalendar.js'></scr"+"ipt>"); 
    alert("test!");
   //calendar() 这个函……

#4


先引入2.js再引入1.js
文件2.js
var bb=function(){
    return "11";
}
文件 1.js
var aa=function(){
    alert(1);
    return bb();
}
alert(aa()); //弹出1,11

#5


我是想在函数里引入js文件

引用 4 楼 zoujp_xyz 的回复:
先引入2.js再引入1.js
文件2.js
var bb=function(){
    return "11";
}
文件 1.js
var aa=function(){
    alert(1);
    return bb();
}
alert(aa()); //弹出1,11

#6


引用 5 楼 kenvle 的回复:
我是想在函数里引入js文件


引用 4 楼 zoujp_xyz 的回复:

先引入2.js再引入1.js
文件2.js
var bb=function(){
return "11";
}
文件 1.js
var aa=function(){
alert(1);
return bb();
}
alert(aa()); //弹出1,11


函数没有,要不通过网页在中介,要不就是在一个js方法中将<script src="srcript.js"></script>写出来

#7


document.write("<scri" + "pt type='text/javascript' src='Include/DateCalendar.js'></scr" + "ipt>");

#8


document.body.appendchild
改成
document.write
可以么?

#9


用这个也不行
引用 8 楼 babyboy9685 的回复:
document.body.appendchild
改成
document.write
可以么?

#10


会不会调用的时候.js还没载入完成?

试试把
document.body.appendChild……
拿到函数外面

或者给calendar()加个延时?

#11




(function() { 
var _js = document.createElement('script');
_js.type = 'text/javascript';
_js.async = true; 
_js.src = 'http://xxx.com/js.js'; 
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(_js, s); 
})(); 



这个?

#12


用 appendChild 不行。可以用insertBefore试试先引入

#13


return calendar();改这样也报错?return calendar;
直接执行calendar(),搞不好,这个函数都有问题。 

#14


怎么用框架的 想想 你就知道怎么办了

#1


可以在网页里面导入JS文件

#2


首先要把2个js文件顺序引入

function calendar_date() {
    document.body.appendChild("<scri"+"pt type='text/javascript' src='Include/DateCalendar.js'></scr"+"ipt>"); 
    alert("test!");
   //calendar() 这个函数有没有返回值?
    return calendar(); //alert(calendar());
}
这样写可能有作用域的问题。

#3


就是想通过这个函数导入JS文件再调用JS文件里的函数,应该要怎么写啊?
引用 2 楼 zoujp_xyz 的回复:
首先要把2个js文件顺序引入

function calendar_date() {
    document.body.appendChild("<scri"+"pt type='text/javascript' src='Include/DateCalendar.js'></scr"+"ipt>"); 
    alert("test!");
   //calendar() 这个函……

#4


先引入2.js再引入1.js
文件2.js
var bb=function(){
    return "11";
}
文件 1.js
var aa=function(){
    alert(1);
    return bb();
}
alert(aa()); //弹出1,11

#5


我是想在函数里引入js文件

引用 4 楼 zoujp_xyz 的回复:
先引入2.js再引入1.js
文件2.js
var bb=function(){
    return "11";
}
文件 1.js
var aa=function(){
    alert(1);
    return bb();
}
alert(aa()); //弹出1,11

#6


引用 5 楼 kenvle 的回复:
我是想在函数里引入js文件


引用 4 楼 zoujp_xyz 的回复:

先引入2.js再引入1.js
文件2.js
var bb=function(){
return "11";
}
文件 1.js
var aa=function(){
alert(1);
return bb();
}
alert(aa()); //弹出1,11


函数没有,要不通过网页在中介,要不就是在一个js方法中将<script src="srcript.js"></script>写出来

#7


document.write("<scri" + "pt type='text/javascript' src='Include/DateCalendar.js'></scr" + "ipt>");

#8


document.body.appendchild
改成
document.write
可以么?

#9


用这个也不行
引用 8 楼 babyboy9685 的回复:
document.body.appendchild
改成
document.write
可以么?

#10


会不会调用的时候.js还没载入完成?

试试把
document.body.appendChild……
拿到函数外面

或者给calendar()加个延时?

#11




(function() { 
var _js = document.createElement('script');
_js.type = 'text/javascript';
_js.async = true; 
_js.src = 'http://xxx.com/js.js'; 
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(_js, s); 
})(); 



这个?

#12


用 appendChild 不行。可以用insertBefore试试先引入

#13


return calendar();改这样也报错?return calendar;
直接执行calendar(),搞不好,这个函数都有问题。 

#14


怎么用框架的 想想 你就知道怎么办了