То, что происходит, довольно тонко.
У меня есть кнопка и флажок, связанные со следующим кодом:
$("#chkbx").click(function() {
if ($(this).is(':checked')) {
alert('checked');
}
else {
alert('unchecked');
}
});
$("#MyButton").click(function() {
$("#chkbx").click();
});
Когда я нажимаю на флажок, все отображается так, как выожидайте.
Когда я нажимаю на кнопку, происходит обратное.
То, что происходит, заключается в том, что когда вы нажимаете на флажок, он запускает событие нажатия по умолчанию перед выполнением вашего кодаи, таким образом, ваш код принимает статус после события щелчка по умолчанию.
Когда вы вызываете метод click непосредственно для элемента, он фактически вызывает вашу функцию щелчка и затем выполняет событие по умолчанию.
Я не то, почему это должно быть.или если это намеренно, или ошибка.