Итак, проблема в том, что вы эффективно запускаете событие изменения из события изменения. Одним из вариантов может быть использование другого события, чтобы вы могли изменить значение с помощью кода.
В качестве альтернативы, вы можете рассмотреть activeFlag, похожий на этот ...
var activeFlag;
$(document).ready( function(){
activeFlag = true;
$('#ckbx').change( function( e ){
if(activeFlag)
{
alert('fired.');
activeFlag = false;//temp disable event to process value reset
this.checked = !this.checked;
activeFlag = true;
}
})
});
надеюсь, что помогает
RE: ДРУГОЕ ПРЕДЛОЖЕНИЕ
Это было бы то же самое, что и мое предложение использовать другое событие. Однако с помощью щелчка вы теряете свой обработчик событий, если пользователь вкладывает и использует пробел для внесения изменений. Конечно, вы можете решить, является ли это приемлемым или нет.
Извините за другого автора, я бы прокомментировал ваш, но у меня пока нет репутации. Именно поэтому я нахожусь здесь, я хочу создать это чисто, чтобы я мог набрать 15 и отметить ответ, который помог мне на днях. Глупо действительно