在下面的代码中为什么on事件Handler不启动?

Emi*_*347 1 javascript jquery

为什么我没有得到控制台输出,是否有一些概念错误HTML页面是

!DOCTYPE html>
<html>
<head>
    <title>prac 1</title>
    <script type="text/javascript" src="jquery-3.1.1.min (1).js"></script>
<script type="text/javascript" src="script2.js"></script>
</head>

<body>

<input type="text" id="just">
<input type="submit" id="submit">

<p></p><p></p>
<div id="div1"></div>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

script2.js也是

$(document).on('ready',check());

function check(){
  $('#submit').on('click',function(){

    console.log("hi");
  })



}
Run Code Online (Sandbox Code Playgroud)

谢谢sdcsc = dsfsdfvdvd(只是为了消除细节的错误)

T.J*_*der 5

因为在元素存在之前立即进行check() 调用 check,因此找不到它们,并且处理程序没有被连接起来.

你应该将一个函数而不是它的返回值传递给ready:

$(document).on("ready", check);
// No () --------------------^
Run Code Online (Sandbox Code Playgroud)