Я получил "форму нового пользователя". Существует три разных уровня очистки:
- клиент
- clientContact
- clientRepresentative
И есть несколько полей, таких как newMail, newPostalCode и т. Д.
Вот код, который я использую для отображения элемента:
function doShow(obj) {
document.getElementById(obj).style.display = '';
}
И код, который я использую, чтобы скрыть элемент:
function doHide(obj) {
document.getElementById(obj).style.display = 'none';
}
Работает для небольших блоков данных. При создании пользователя указывается уровень очистки, если это clientRepresentive, отображается соответствующее поле.
Например, у клиента есть только один адрес электронной почты, у clientRepresentive есть два адреса электронной почты, а у clientContact - три.
Но это не работает! .
Если я выберу клиента, то будет одно электронное письмо, как и планировалось, но если я выберу clientContact и затем переключусь на clientRepresentive, избыточное поле (e-mail3) будет не скрыто .
Я считаю, что это проблема JavaScript, пожалуйста, помогите мне, так как мой уровень гнева достигает предела.
редактирование:
Я забыл вставить функцию, используемую, чтобы показать / скрыть элементы.
if (clearenceLevel != "Chose...") {
if (clearenceLevel == "client") {
doShow("newMail");
doHide("newMail2");
doHide("newMail3");
doShow("newNip");
doShow("newRegon");
doShow("newStreet");
doHide("newHeadquarters");
doShow("newAddress");
doShow("newPostalCode");
doShow("kptekst");
doShow("newCity");
doShow("newAccount");
doShow("newState");
doHide("newStatus");
doHide("newPassword");
} else if (clearenceLevel == "clientRepresentative") {
doShow("newMail");
doShow("newMail2");
doHide("newStatus");
doHide("newMail3");
doHide("newNip");
doHide("newRegon");
doHide("newStreet");
doHide("newHeadquarters");
doHide("newAddress");
doHide("newPostalCode");
doHide("newCity");
doHide("newAccount");
doHide("newState");
doHide("kptekst");
doShow("newPassword");
} else if (clearenceLevel == "clientContact") {
doShow("newMail");
doShow("newMail2");
doShow("newMail3");
doHide("newNip");
doHide("newRegon");
doHide("newStatus");
doHide("newStreet");
doHide("newHeadquarters");
doHide("newAddress");
doHide("newPostalCode");
doHide("newCity");
doHide("newAccount");
doHide("newState");
doHide("kptekst");
doHide("newPassword");
}
}