Я нашел сумасшедшее решение для решения этой проблемы с флажком, который не отмечен или не отмечен, вот мой алгоритм ... создать глобальную переменную, скажем, var check_holder
check_holder имеет 3 состояния
- неопределенное состояние
- 0 состояние
- 1 состояние
Если флажок установлен,
$(document).on("click","#check",function(){
if(typeof(check_holder)=="undefined"){
//this means that it is the first time and the check is going to be checked
//do something
check_holder=1; //indicates that the is checked,it is in checked state
}
else if(check_holder==1){
//do something when the check is going to be unchecked
check_holder=0; //it means that it is not checked,it is in unchecked state
}
else if(check_holder==0){
//do something when the check is going to be checked
check_holder=1;//indicates that it is in a checked state
}
});
Приведенный выше код можно использовать во многих ситуациях, чтобы узнать, установлен ли флажок или нет. Его концепция заключается в том, чтобы сохранять состояния флажков в переменной, т.е. когда они включены или выключены. Надеюсь, эту логику можно использовать для решения вашей проблемы.
.click()
вызывается при событии щелчка. Поэтому я не понимаю, что вы имеете в виду под «включить» и «отключить». Если флажок установлен, вы можете вызывать функциюa()
. Но вы должны написать обратную функцию, которая будет вызываться, когда флажок не установлен . Я запутался.