It's because the <input>
checkbox is inside the <td>
and you have attached click event to the <td>
to overcome this, Check for the target type and if it's not input checkbox, you need to process it.
$('td').click(function (event) {
if (!$(event.target).is('input')) {
$('input:checkbox', this).prop('checked', function (i, value) {
return !value;
});
}
});
refer