Два решения приходят на ум здесь ...
1)
Приложить обработчик изменения Jquery к «Тип события» выберите элемент, и выполнить AJAX запрос, чтобы вернуться динамические поля, которые необходимо будет отобразить.
$('#TYPE_OF_EVENT_ID').change(function() {
$.get('/api/to/return/dynamic/fields/', {'type_of_event': $(this).val()}, function(data, textStatus, jqXHR) {
# Update DOM with dynamic content return by data (should probably be JSON)
});
});
2)
жесткий код логики прямо в ваш JavaScript, чтобы обрабатывать заявления тематические для отображения динамических полей в зависимости от значения, выбранного в «Тип события» выберите элемент.
$('#TYPE_OF_EVENT_ID').change(function() {
switch($(this).val()) {
case 'Special Event':
# Show Special Event Fields
case 'Non Special Event':
# Show Non Special Event Fields
}
});
Я бы рекомендовал вариант 1, поскольку он масштабируется лучше, сохраняя эту логику на сервере, чтобы она управлялась базой данных.
Интересно, я думал, что вариант 1 немного переборщил, чтобы иметь запросы на серверную часть, чтобы обновить форму, но я возьму ваш совет –