这是我想要发生的事情:当我点击imageContainer
div中的复选框时,复选框应该显示选中状态。我还添加了一些类来更改所选框的背景颜色和标签颜色。这部分工作。jQuery通过点击父div选择复选框
我可以点击imageContainer
股利,该div内的复选框被选中。但是,当我直接点击复选框时,它不会在框中显示复选标记。我试过preventDefault
,return false
和stopPropagation
,但没有运气。
<div class="imageContainer" id="question-container-7571">
<img src="/rfs/servicerequest/taskImages/flooring_kitchen.jpg" alt="Flooring">
<div class="l-top-space">
<label for="id_7571_11491">Flooring</label>
<div class="l-right"><input id="id_7571_11491" type="checkbox" name="7571" value="11491"></div>
<input id="id_7571_11492" type="hidden" name="7571" value="11492">
</div>
</div>
这里是jQuery的我使用:
jQuery('.imageContainer').toggle(
function(e) {
var imgCont = jQuery(this);
imgCont.find('input').prop('checked', true);
imgCont.addClass('ic-checked');
imgCont.find('label').addClass('ic-selected');
},
function(e) {
var imgCont = jQuery(this);
imgCont.find('input').prop('checked', false);
imgCont.removeClass('ic-checked');
imgCont.find('label').removeClass('ic-selected');
}
);
上什么,我缺少的将是巨大的任何帮助或建议!
遗憾没有给你一个答案,但我只会给你两个想法:1。我怀疑你不能与'toggle'功能做到这一点,2。你不想无论如何,它已经从最新版本的jQuery中消失了。 :-) –
一个解决方案可能是将' Steeven
为什么你使用[toggle](http://api.jquery.com/toggle/)?你想要点击事件反应,对吗? – Steeven