Изначальная идея #states заключается в том, что бы была возможность создания динамических форм без написания JavaScript кода, как такого.
#states разрешает без единой строчки кода JavaScript, только с помощью php и Form API Друпала, изменять состояние одного элемента (видимость - visible / invisible, активность - enabled /disabled, необходимость - required / optional, состояние чекбоксов - checked /unchecked, expanded /collapsed - сворачивать / разворачивать филдсеты) ,на основании состояния второго (или даже на основании нескольких элементов), после какого то действия пользователя.