Javascript函数立即调用

Javascript function immediately invoking

本文关键字:调用 函数 Javascript      更新时间:2024-01-12

我有两个js文件。第一个(警报.js(

function test() {
    var name= document.getElementById("name").value; 
    alert(name);
};

第二个(主要.js(

document.getElementById("question_button").addEventListener("click", test());

在 HTML 中,我看起来像那样

<body>
    ...
    <script type="text/javascript" src="js/alert.js"></script>
    <script type="text/javascript" src="js/main.js"></script>
</body>

加载页面时调用函数测试。这不是我需要的。这可能很简单,但我不明白。如何使函数"测试"仅在按下按钮时调用?

您正在调用test()并将其返回的值(undefined(传递给addEventListener。只需直接传递test作为参数,而不是调用它:

document.getElementById("question_button").addEventListener("click", test);

或传入匿名函数:

document.getElementById("question_button").addEventListener("click", function ( ) { test(x) } );