Javascript 使用jQuery单击父级时触发“提交”按钮的单击
我有一个包裹在div中的submit按钮。我想在单击div时触发submit按钮上的click事件。问题是,此单击事件冒泡并导致堆栈溢出/无限循环。当我尝试停止子单击事件的传播时,问题没有得到解决 HTML: 这仍然会导致堆栈溢出错误。返回false也是如此:Javascript 使用jQuery单击父级时触发“提交”按钮的单击,javascript,jquery,html,css,input,Javascript,Jquery,Html,Css,Input,我有一个包裹在div中的submit按钮。我想在单击div时触发submit按钮上的click事件。问题是,此单击事件冒泡并导致堆栈溢出/无限循环。当我尝试停止子单击事件的传播时,问题没有得到解决 HTML: 这仍然会导致堆栈溢出错误。返回false也是如此: $('.container').click(function () { var input = $(this).find('input'); input.trigger('click'); return false
$('.container').click(function () {
var input = $(this).find('input');
input.trigger('click');
return false;
});
谢谢你的帮助 不绑定按钮单击容器内的事件单击一个。应该是这样
$('.container').click(function() {
var input = $(this).find('input');
input.trigger('click');
});
$('input').click(function(e) {
e.stopPropagation();
alert('button clicked');
});
代码的问题是,容器单击在其相应的单击处理程序注册之前触发内部按钮单击,因此它没有机会停止事件冒泡。不绑定容器内的按钮单击事件单击一。应该是这样
$('.container').click(function() {
var input = $(this).find('input');
input.trigger('click');
});
$('input').click(function(e) {
e.stopPropagation();
alert('button clicked');
});
您的代码的问题是,容器单击在其相应的单击处理程序注册之前触发内部按钮单击,因此它没有机会停止事件冒泡。您到底想在这里实现什么?我有点困惑,因为如果您希望整个div都可单击,那么为什么要在内部有一个按钮?我在这里遗漏了什么或者正确理解了这个问题吗?问得好,@Sai:输入在一个div中,需要有一些:在应用样式之前,防止输入被点击。你到底想在这里实现什么?我在这里有点困惑,因为,如果你想让整个div都可以点击,那为什么里面有一个按钮呢?问得好,@Sai:输入在一个div中,需要有一些:before样式应用于它,以防止输入被点击。很简单,“为什么我没有想到这个”工作解决方案。非常感谢。很简单,‘为什么我没有想到那个’有效的解决方案。非常感谢。
$('.container').click(function() {
var input = $(this).find('input');
input.trigger('click');
});
$('input').click(function(e) {
e.stopPropagation();
alert('button clicked');
});