Технически возможно использование некоторых методов CSS3, хотя не будет универсальной поддержки браузера.
Ваше поле будет иметь идентификатор в зависимости от префикса формы (по умолчанию 'id', настраивается при созданииform), так что вы можете стилизовать элемент формы в css с идентификатором #id_field_name.Затем вы можете использовать некоторые CSS3 селекторы , чтобы добраться до ваших полей, что-то вроде этого:
#id_checkbox_field ~ #id_hidden_field {display: none; }
#id_checkbox_field[checked] ~ #id_hidden_field { display: block; }
Конечно, ваш селектор будет меняться в зависимости от структуры вашего документа.Тильда будет работать только в том случае, если id_checkbox_field
и id_hidden_field
имеют общего родителя, но теоретически вы можете настроить структуру документа так, чтобы это можно было сделать с помощью CSS3.Если вам нужны плавные анимации, это технически возможно , но это не просто и не очень хорошо поддерживается.
Альтернатива, как сказал pjmorse, состоит в том, чтобы они поставили флажок, отправили форму ивернуть его с отображением нового поля.Дайте мне знать, если вам нужна помощь в выяснении этого, это целая другая банка червей, и я сомневаюсь, что это то, что вы ищете.
В большинстве случаев, когда вы хотите что-то делать динамически, выхочу использовать JavaScript.