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);