Javascript 单击输入按钮上的事件

Javascript 单击输入按钮上的事件,javascript,jquery,html,Javascript,Jquery,Html,我尝试将函数绑定到输入按钮上的单击事件,但它似乎不起作用,并且未调用方法: <div id='back'> <input type="button"/> </div> 我不喜欢使用onClick事件,而是更喜欢使用这种方法。Thanx提前。您绑定到的是div而不是按钮 为按钮指定名称或将其选择为子按钮,然后绑定click事件 <div id='back'> <input id='backbutton' ty

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

<div id='back'>


     <input type="button"/>

     </div>

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

您绑定到的是div而不是按钮

为按钮指定名称或将其选择为子按钮,然后绑定click事件

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

您应该将代码放在文档就绪处理程序中。还要注意,您选择的是div标记,而不是输入元素

$(document).ready(function(){
   $('#back input[type=button]').click(clickOnBackbutton);
   // $('#back input[type=button]').click(function(){
   //    or do something here
   // });
})
这应该起作用:

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

$('#back').click(function(){
  clickOnBackButton();
});
你可以这样做

$('#back').click(function(){
    clickOnBackButton();
});
我认为没有输入类型=“按钮”这样的东西。可能键入=“提交”

按钮:

<div id='back'>
    <input type="button" id='back-button'/>
</div>
您还可以使用:

$('#back').on('click', function(){
  // some action
});

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

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

如果希望
div#back
捕获单击的按钮事件,那么在最近的jquery中,您必须执行以下操作:

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

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

on('click')上单击
没有区别。
@使用此用法未定义,您是对的。但是使用带有3个参数的
on
是不同的:)我把所有的jQuery代码放在一个单独的文件中,我把它包括在我的主文件中,我应该把它总是放在
$(文档)中吗,就在关闭标记之前。如果您选择将
script
标记放在
head
中,则必须将代码包装在document ready事件中,因为脚本是在呈现页面之前执行的。
$('#back').on('click', function(){
  // some action
});
function clickOnBackbutton(){
    console.log('back to menu'); //function not called 
}
$(document).on("click", "#back", clickOnBackbutton);
$('#back').on("click", "input[type=button]", clickOnBackbutton);