2

我尝试将一个函数绑定到输入按钮上的单击事件,但它似乎不起作用并且没有调用方法:

<div id='back'>


     <input type="button"/>

     </div>

jQuery:

 $('#back').click(clickOnBackbutton);

              function clickOnBackbutton(){

                console.log('back to menu'); //function not called 

              }

我不喜欢使用 onClick 事件,而是更喜欢使用这种方法。提前谢谢。

4

8 回答 8

5

您应该将代码放在文档就绪处理程序中。另请注意,您选择的是 div 标签而不是 input 元素。

$(document).ready(function(){
   $('#back input[type=button]').click(clickOnBackbutton);
   // $('#back input[type=button]').click(function(){
   //    or do something here
   // });
})
于 2012-10-19T13:59:54.823 回答
3

按钮:

<div id='back'>
    <input type="button" id='back-button'/>
</div>

jQuery:

$(document).ready(function(){
    $('#back-button').click(function(){
       console.log('Back to Menu');
    });
})
于 2012-10-19T14:04:10.267 回答
1

您绑定到 div 而不是按钮。

为按钮命名或将其选择为子项,然后绑定单击事件。

<div id='back'>
    <input id='backbutton' type="button"/>
</div>

jQuery

$('#backbutton').click(clickOnBackbutton);

function clickOnBackbutton(){
    console.log('back to menu'); //function not called 
}
于 2012-10-19T13:59:23.940 回答
1

这应该有效:

function clickOnBackButton(){
  console.log("back to menu");
}

$('#back').click(function(){
  clickOnBackButton();
});
于 2012-10-19T14:01:21.800 回答
1

你可以这样做

$('#back').click(function(){
    clickOnBackButton();
});

我认为没有输入类型 =“按钮”这样的东西。也许 type="submit" ?

于 2012-10-19T14:02:17.257 回答
1

您也可以使用:

$('#back').on('click', function(){
  // some action
});
于 2012-10-19T14:04:35.723 回答
1

JQuery 1.7+ 你应该使用 on 附加事件。

function clickOnBackbutton(){
    console.log('back to menu'); //function not called 
}
$(document).on("click", "#back", clickOnBackbutton);

运行示例

于 2012-10-19T14:08:02.030 回答
1

如果您想div#back捕获单击按钮事件,那么使用最近的 jquery 您必须这样做:

$('#back').on("click", "input[type=button]", clickOnBackbutton);

请注意,您必须将脚本标记放在正文的末尾,或者将代码包装在$(document).ready事件中。

于 2012-10-19T14:28:00.717 回答