Comment arrêter de remontée d'événements sur la case à cocher, cliquez

J'ai une case à cocher que je veux effectuer certaines Ajax d'action sur l'événement click, cependant la case à cocher est également à l'intérieur d'un conteneur avec sa propre sur le comportement que je ne veux pas exécuter lorsque la case est cliqué. Cet exemple illustre ce que je veux faire:

JS:

$(document).ready(function() {
  $('#container').addClass('hidden');
  $('#header').click(function() {
    if ($('#container').hasClass('hidden')) {
      $('#container').removeClass('hidden');
    } else {
      $('#container').addClass('hidden');
    }
  });
  $('#header input[type=checkbox]').click(function(event) {
    //Do something
  });
});

CSS:

#container.hidden #body {
  display: none;
}

HTML:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<div id="container">
  <div id="header">
    <h1>Title</h1>
    <input type="checkbox" name="test" />
  </div>
  <div id="body">
    <p>Some content</p>
  </div>
</div>

Cependant, je ne peux pas comprendre comment arrêter la remontée d'événements sans causer le comportement par défaut, cliquez sur (case à cocher devenir cochée/non cochée) pour ne pas s'exécuter.

À la fois de l'arrêt suivant à la remontée d'événements, mais aussi de ne pas modifier la case à cocher état:

event.preventDefault();
return false;
InformationsquelleAutor roryf | 2009-07-22