我是jQuery的新手,来自Python和Java背景,所以我很难习惯如何在不同的.js文件中工作。我有一个导入以下脚本的HTML文件:
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script
src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.0/jquery.validate.js"></script>
<script src="{{ STATIC_URL }}/forms.js"></script>
<script src="{{ STATIC_URL }}/workout1Alt.js"></script>
最后两个是我的。在forms.js中,我有一个通用函数validateNumberForm
,我希望能够以更具体的workout1Alt.js
形式使用它。表单的签名如下所示:
var validateNumberForm = function(id)
我在validateNumberForm
中调用workout1Alt.js
,如下所示:
validateNumberForm('#squatsForm');
但是我收到了这个错误:
Reference Issue: Cannot find variable validateNumberForm.
有人能告诉我如何做这样的事情的最佳做法吗?
答案 0 :(得分:1)
我猜你是在jQuery就绪处理程序中包含定义,如下所示:
$(function() {
var validateNumberForm = function(id) { /* ... */ };
// ...
});
这使validateNumberForm
仅在那里可用。如果您希望它可用于其他文件,您可以将其移出现成的处理程序:
var validateNumberForm = function(id) { /* ... */ };
$(function() {
// ...
});
或者您可以明确导出它:
$(function() {
var validateNumberForm = function(id) { /* ... */ };
window.validateNumberForm = validateNumberForm;
// ...
});