我有许多页面的常用功能,如下所示
function (){
resetForm();
$ajax call
{
// some code //
}
}
现在,如果我没有在对应的js中写入 resetForm() fn,它会给出未应用的引用错误,因为它应该给出,而且我的代码跟在行之后也没有执行。
我写的 resetForm fn()的js文件工作正常,但其他文件没有。
我现在的解决方案是在其他页面中写一个空白的resetForm函数。还有其他方法吗? 谢谢你的帮助
答案 0 :(得分:4)
您可以查看typeof
if (typeof resetForm === 'function') {
resetForm()
}
// carry on.
这将检查您是否有一个名为resetForm
的函数,如果可以,则执行它。
答案 1 :(得分:3)
您可以检查它是否存在(全局),而不是通过以下方式调用它:
window.resetForm && resetForm();
答案 2 :(得分:0)
以下是一些明显的选择:
typeof resetForm === 'function' && resetForm();
答案 3 :(得分:0)
只检查是否定义了resetForm
:
if (resetForm) {
resetForm();
}
答案 4 :(得分:0)
我知道它不是jquery-tagged问题,但考虑使用jquery的onReady处理程序,它会在加载所有javascript时执行。
//main.js
$(function(){
resetForm();
});
//functions.js
function resetForm() { .. }
如果resetForm
位于单独的j中,并且在resetForm
加载后加载,则会正确调用main.js
事件。