如果我有一个函数,那就调用index.js文件中的另一个函数。为什么要显示此错误?
<!-- page js -->
<script type="text/javascript" src="{{ asset('assets/js/index.js')}}" ></script>
<script>
function onedevice(imei) {
// mostramos las graficas, se desean datos
$('#charts_device1').show();
$('#charts_device2').show();
// rellenamos los datos
// var imei = $("#select_imeis").val();
if (imei !== 0) {
load_chart_device(imei); // < this line
}
}
</script>
错误是:
未捕获的ReferenceError:未定义load_chart_device 在onedevice(report_devices:302)
在HTMLDocument。 (report_devices:234)
在mightThrow(jquery-3.2.1.js:3583)
在过程中(jquery-3.2.1.js:3651)
我在index.js中更改了我的代码。但仍然没有工作。
function load_chart_device(imei){
console.log(imei);
//CODE....
});
function onedevice(imei){
// mostramos las graficas, se desean datos
$('#charts_device1').show();
$('#charts_device2').show();
// rellenamos los datos
// var imei = $("#select_imeis").val();
if(imei!==0){
load_chart_device(imei);
}
}
答案 0 :(得分:1)
这种情况正在发生,因为函数onedevice()
首先执行。在html head标签
index.js
的导入
像这样写下index.html
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script src="index.js"></script>
</head>
<body>
<script type="text/javascript">
var imei = 10;
function onedevice(imei) {
// code ...
if (imei !== 0) {
load_chart_device(imei);
}
}
// call onedevice
onedevice(imei);
</script>
</body>
</html>
并像这样写下index.js
function load_chart_device(imei) {
console.log("load_chart_device is working fine");
alert(imei);
}
确保您已在index.js
代码中导入<head></head>
。
要进一步了解其工作原理,请阅读Load and execution sequence of web