У меня проблема с слишком длинной строкой формы запроса.
Я планирую решить эту проблему, просто отключив все неиспользуемые элементы формы перед отправкой.
Но мне нужна помощь в создании этой функции JS ...
Вы должны знать, что у меня есть js-функция, которая показывает подкатегории всякий раз, когда выбрана основная категория . Это происходит "onChange
" в выпадающем списке . Таким образом, "onChange
" из выпадающего списка категории, правильный DIV
сделан видимым с использованием javascript, и поэтому делает подкатегории видимыми для пользователя, чтобы указать (пользователи могут выбрать цвет, марку, год и т. д. в подкатегориях).
Например, если вы выбрали " Автомобили " из основного списка , функция js создаст DIV
, который содержит все " Автомобили * 1026". * "видимые параметры (цвет, марка, год и т. д.). Затем, если вы выбрали другую категорию, скажите « Грузовые автомобили », «Автомобили» станут невидимыми, а « Грузовые автомобили » DIV станет видимым. Простой.
Однако моя проблема в том, что даже если DIV в данный момент не видны, элементы формы внутри них все равно отправляются. Это совершенно ненужно.
Итак, мне нужна функция javascript, которая может быть интегрирована в уже существующую функцию, которая скрывает / показывает DIV подкатегории, которая отключает все элементы внутри неиспользуемых DIV.
Вот функция, которая показывает / скрывает DIV подкатегории и вызывается при изменении выпадающего списка основной категории:
var category=document.nav_form_main.nav_category_list.value;
(category=="Cars")?byId("nav_sub_cars").style.display='block' : byId("nav_sub_cars").style.display='none';
(category=="Trucks")?byId("nav_sub_trucks").style.display='block' : byId("nav_sub_trucks").style.display='none';
Я бы хотел что-то вроде этого:
(category=="Cars")?byId("nav_sub_cars").style.display='block' : disableDiv("nav_sub_cars");
function disableDiv(divId){
Disable all form elements inside divId
AND
make divId invisible.
}
ПРИМЕЧАНИЕ. В элементах div содержатся только элементы формы и таблицы. Другими словами, мне все равно, если все элементы внутри div отключены.
Под элементами формы я имею в виду: ввод текста, списки выбора, флажки и радио.
Я совсем немного знаю js, поэтому любая помощь в создании этой функции, которая не должна быть слишком сложной, ценится ...
Спасибо