2012-08-30 145 views
0

任何人都可以帮助我理解为什么这不起作用吗?JQuery点击只触发一个动作

<div id="css-check" class="css-check tool-tip checkbox inline" ... 
    <input id="someid" name="somename" type="checkbox" value="somevalue" /> 
</div> 

$('.css-check').bind({ 
    click: function() { 
    $(this).toggleClass('clicked'); 
    this.children[0].click(); 
    }, 
    mouseenter: function() { 
    // do something on mouseenter 
    } 
}); 

只采取第一个动作。所以,该类被切换,但复选框,即div的[0]子,不会被点击。

编辑

这工作。

var $checkbox = $(this).children('input:first-child'); 
$checkbox.prop('checked', !$checkbox[0].checked); 
$(this).toggleClass('clicked'); 
+0

欢迎堆栈溢出!随意添加您的解决方案作为答案。 –

回答

0

变化:

this.children[0].click(); 

到:

$(this).children('input:first-child').click(); 

注:此触发click事件,如果你想查询的复选框,然后使用:

$(this).children('input:first-child').attr('checked', 'true'); 
+0

嗯,没有真正的工作。然而,我的问题编辑dows工作。感谢您指点我正确的方向。 – Kasper