/
Coderdev
/
web-static-labs
Обзор
Документация
Войти
/
Coderdev
/
web-static-labs
Код
Запросы
0
Задачи
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
html/lab6/task6/script.js
45 строк
2 KB
Coderdev
1
12 май 2026, 12:37
12 май 2026, 12:37
d8ecd0f
Код
Авторство
О чём код?
const form = document.getElementById('project-form'); const hasProjectCb = document.getElementById('has-project'); const projectNameContainer = document.getElementById('project-name-container'); const saveBtn = document.getElementById('save-btn'); const sendBtn = document.getElementById('send-btn'); let isSaved = true; hasProjectCb.addEventListener('change', () => { projectNameContainer.classList.toggle('hidden', !hasProjectCb.checked); }); form.addEventListener('input', () => { isSaved = false; }); function getFormData() { return { fio: `${document.getElementById('surname').value} ${document.getElementById('name').value} ${document.getElementById('patronymic').value}`, gender: document.querySelector('input[name="gender"]:checked').value, faculty: document.getElementById('faculty').value, hasProject: hasProjectCb.checked ? 'Да' : 'Нет', projectName: hasProjectCb.checked ? document.getElementById('project-name').value : '-' }; } saveBtn.addEventListener('click', () => { const data = getFormData(); localStorage.setItem('project_user_data', JSON.stringify(data)); isSaved = true; alert('Данные сохранены в localStorage'); }); sendBtn.addEventListener('click', () => { const data = getFormData(); localStorage.setItem('temp_send_data', JSON.stringify(data)); window.location.href = 'result.html'; }); window.addEventListener('beforeunload', (e) => { if (!isSaved) { e.preventDefault(); e.returnValue = ''; } });