Javascript 未捕获引用错误:“functionName”未定义

Javascript 未捕获引用错误:“functionName”未定义,javascript,jquery,Javascript,Jquery,因此,我检查了.jsp文件中的脚本标记: <script type="text/javascript" src="javascript/jquery-1.3.1.min.js"></script> <script language="JavaScript" > "some content here ...." </script> 不知何故,我的Chrome控制台中不断出现一个错误,指出: 未捕获引用错误:未定义functionName函数fun

因此,我检查了.jsp文件中的脚本标记:

<script type="text/javascript" src="javascript/jquery-1.3.1.min.js"></script>

<script language="JavaScript" > "some content here ...." </script>
不知何故,我的Chrome控制台中不断出现一个错误,指出:

未捕获引用错误:未定义functionName

函数functionName{应在$document外部定义。readyfunction{,如

如果在document.ready中定义了它,那么它的作用域将限制在此函数中

只有您可以定义functionName何时从$document.ready内部调用

将functionName移出$document.readyfunction的一侧{

此外,还需要使用.to按类将元素作为目标或按id将元素作为目标

因此$'.current'将选择class=current的任何元素,$'current'将选择id=current的元素


最后一点要注意的是更新jQuery版本,因为1.3.1已经非常过时,而且它缺少许多有帮助的重要功能,这些功能都是较新版本支持的。

不要将函数包装在DOM ready$document.readyfunction中{handler。由于它是一个匿名函数,因此您的functionName函数具有本地作用域。因此您不能在DOM ready之外调用它

阅读


并且

当您在onLoad中调用functionName时,该函数尚未出现在文档中。 尝试将函数functionName输出。 比如说,

<script language="JavaScript" > 

"some content here ...." 

function functionName() {
  your function
}

</script>

移动函数是修复它的一种方法,但另一种方法是从就绪处理程序调用函数,或者如果确实需要加载所有页面内容,则从加载处理程序调用函数:

$(document).ready(function() {
  function functionName() {
    // whatever
  }

  functionName();
});

不必要地污染全局名称空间通常是一件坏事。

仅供参考,jQuery 1.3.1是古老的。@pointy,该系统本身就是古老的。我希望它都是我的哈哈……好吧,但请注意,它可能会在新的浏览器上出现问题,包括IE9+。感谢使用{.}和{}。我每天都会学到新东西。:有没有可能让函数functionName{和这里的ajax调用}?在这种情况下,函数在被调用时也会执行ajax调用?谢谢。是的,当然。另外,你也可以通过以下线程:如果你想从ajax调用返回一个值
function functionName() {...}
$(document).ready(function(){...});
$(document).ready(function(){
   function functionName() {...}
      // but in your case below function 
      // is calling from body when its loaded
      functionName(); //from here you can call
    } 
  );
function functionName() { ....... }

$(document).ready(function(){
    $('.current').click(function(event){
        functionName();
    });
});
<script language="JavaScript" > 

"some content here ...." 

function functionName() {
  your function
}

</script>
$(document).ready(function() {
  function functionName() {
    // whatever
  }

  functionName();
});