为什么这个javascript函数在没有被调用的情况下运行?

jam*_*one 5 javascript jquery

$(document).ready(SetupButtonClicks());

function SetupButtonClicks() {
    $('#btnJavaPHP').click(DoPHPStuff());
}

function DoPHPStuff() {
    //stuff
}
Run Code Online (Sandbox Code Playgroud)

我在我的javascript文件中有这个代码,当我调试它时,我看到SetupButtonClicks()它应该调用它,但在完成之后调用它DoPHPStuff().DoPHPStuff()只应在btnJavaPHP单击时调用.我究竟做错了什么?

Poi*_*nty 17

更改SetupButtonClicks函数:

$('#btnJavaPHP').click(DoHPStuff);
Run Code Online (Sandbox Code Playgroud)

你有事情是这样编码的,你告诉JavaScript来调用该函数,而不是使用它作为"点击"处理程序.括号是一个运算符,可以调用函数.

  • @jamone你是$(文件).ready可能还是错的......一定要改变它. (2认同)