Javascript 如何选择复选框而不选择整行(请参见正文)?
比如,我有一个html:Javascript 如何选择复选框而不选择整行(请参见正文)?,javascript,html,css,onclick,Javascript,Html,Css,Onclick,比如,我有一个html: <div class="row"> <input type="checkbox"> </div> 当用户单击整行时,它将高亮显示(selected类由onClick事件添加)。我将onClick事件附加到具有class行的元素 当用户单击复选框(位于.row内)时,此复选框变为选中状态。但行不应突出显示 对于onClick事件,是否可以将复选框区域从.row区域中排除 更新 以下是我现在拥有的: 我不希望在单击复选框时
<div class="row">
<input type="checkbox">
</div>
selected
类由onClick
事件添加)。我将onClick
事件附加到具有class行的元素
.row
内)时,此复选框变为选中状态。但行不应突出显示onClick
事件,是否可以将复选框区域从.row
区域中排除
更新 以下是我现在拥有的: 我不希望在单击复选框时类被切换
更新2
以下是jQuery的工作解决方案供将来使用:将单击事件添加到每个复选框并停止其传播。这应该可以-
e.stopPropagation
在复选框的事件处理程序中单击
将单击事件添加到每个复选框并停止其传播。这应该可以-
e.stopPropagation
在复选框的事件处理程序中单击
是的,这是可能的。正确的方法是在复选框上放置onclick事件,捕获事件并停止其传播 大概是这样的:
function checkboxClick (e) {
e.stopPropagation();
}
请告诉我它是否有效是的,有可能。正确的方法是在复选框上放置onclick事件,捕获事件并停止其传播 大概是这样的:
function checkboxClick (e) {
e.stopPropagation();
}
请告诉我它是否有效如果捕获事件并查看event.toElement,您可以查看他们是否单击了.row或其他内容
如果捕获事件并查看event.toElement,可以看到他们是否单击了.row或其他内容
我想我们需要更多的代码。您能给出一些用于onclick事件的javascript、更多的html以及任何css(如果有的话)吗?也许会拉小提琴?用
onclick
event为我们提供完整的代码。还有人注意到这是一个Javascript问题,没有提到jQuery,有jQuery答案吗?Javascript!=问题很简单,我看不出有任何理由需要更多的代码。这是一个关于事件传播的简单问题。为什么你们需要更多的代码?我已经用一些JSFIDLE更新了我的问题。请检查一下。至于jQuery,这对我来说并不重要。我需要任何可能的方法。我想我们需要更多的代码。您能给出一些用于onclick事件的javascript、更多的html以及任何css(如果有的话)吗?也许会拉小提琴?用onclick
event为我们提供完整的代码。还有人注意到这是一个Javascript问题,没有提到jQuery,有jQuery答案吗?Javascript!=问题很简单,我看不出有任何理由需要更多的代码。这是一个关于事件传播的简单问题。为什么你们需要更多的代码?我已经用一些JSFIDLE更新了我的问题。请检查一下。至于jQuery,这对我来说并不重要。我需要任何可能的方法。不知道为什么这会遭到否决。通过向复选框添加onclick并调用stopPropagation(),您只解决了单个元素的问题。如果Edward向行中添加另一个元素,则必须添加另一个onclick和stopPropagation()。通过检查行的onclick中的事件目标,您可以一次解决所有子元素的问题。不确定为什么会收到否决票。通过向复选框添加onclick并调用stopPropagation(),您只解决了单个元素的问题。如果Edward向行中添加另一个元素,则必须添加另一个onclick和stopPropagation()。通过检查行的onclick中的事件目标,可以一次解决所有子元素的问题。