fix checkbox behavior, use prop instead of attr