我有3个文件:
Php文件,其中包含其他两个文件,如下所示:
<head>
<!-- 1. Javascript File-->
<script src="js/functions.js"></script>
</head>
<html>
<?php include 'includes/question1.html' ?>
</html>
functions.js文件如下所示:
$(document).ready(function(){
function showError(){
alert('ERROR');
}
});
$('input').change(function(){
// SOME STUFF HERE
});
但是现在我想在第三个数据或普通的Php文件中使用“showError”函数或“更改”函数,但每次都没有这样的函数。
这只是一个可见性问题我该怎么改变这个?
答案 0 :(得分:0)
这个问题与文件没有任何关系,如果找到jQuery并执行js,它们就没问题了(当你从中得到错误时,它似乎有效)。
您的问题是范围,其中showError
可用。你已经在jQuery-ready处理程序中声明了它,这意味着它只在那里可用而不是在外面。
此外,您应该将$('input')
之类的DOM选择始终放在就绪处理程序中 - 这就是它的用途。
所以这会奏效:
$(document).ready(function(){
function showError(){
alert('ERROR');
}
$('input').change(function(){
// SOME STUFF HERE
// including calls to showError();
});
});
实际上,您甚至可以将处理程序的showError
声明 移动到全局范围内。