我有两个非常简单的文件:email.js
和script.js
email.js 是
$(function () {
function txtInput(elem) {
var inputData = $.trim(elem.val());
if (inputData == "") {
alert("Filed Is Empty");
}
else{
return inputData;
}
}
});
和 script.js
$(function () {
var proceed = false;
$("#btnContactUs").on("click", function (e) {
if (txtInput($('#name'))){
proceed = true;
}else{ proceed = false }
e.preventDefault();
});
});
我在index.php
注册了
<script src="js/email.js"></script>
<script src="js/script.js"></script>
的问题:
1 - 首先$("#btnContactUs").on("click", function (e) {});
没有做任何事情所以我删除了
$(function () {
});
来自email.js
的它开始工作了!能告诉我为什么$(function () {});
这样做了吗?
2 - 现在代码正常运行(从email.js中删除$(function () ...
后)但是我在控制台中收到警告/错误:
你能告诉我为什么会这样吗?我该如何解决?
谢谢,
答案 0 :(得分:1)
当使用var
声明的函数和变量在其他函数中声明时,它们是其父函数的本地函数。这就是为什么在您删除txtInput
之前未定义$(function(){});
的原因。
这应该已经清除了“未定义”错误,特别是因为您的代码现在正在运行。清除控制台,刷新页面,看它是否仍显示错误。