личныйкабинет.js 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. document.addEventListener('DOMContentLoaded', function() {
  2. // ... (Код получения данных пользователя как в предыдущем примере)
  3. // Обработка нажатия кнопки "Редактировать"
  4. const editButton = document.getElementById("editButton");
  5. const saveChangesButton = document.getElementById("saveChangesButton");
  6. const editProfileForm = document.getElementById("editProfileForm");
  7. editButton.addEventListener('click', function() {
  8. editProfileForm.style.display = "block"; // Показывает форму редактирования
  9. editButton.style.display = "none"; // Скрывает кнопку "Редактировать"
  10. saveChangesButton.style.display = "block"; // Показать кнопку "Записать"
  11. });
  12. // Обработка нажатия кнопки "Записать"
  13. saveChangesButton.addEventListener('click', function() {
  14. // Получение данных из формы
  15. const name = document.getElementById("editName").value;
  16. const surname = document.getElementById("editSurname").value;
  17. const patronymic = document.getElementById("editPatronymic").value;
  18. const email = document.getElementById("editEmail").value;
  19. const phone = document.getElementById("editPhone").value;
  20. // Отправка данных на сервер (как в предыдущем примере)
  21. fetch('/update_user_data', { // Замените '/update_user_data' на реальный URL-адрес
  22. method: 'POST',
  23. headers: {
  24. 'Content-Type': 'application/json'
  25. },
  26. body: JSON.stringify({
  27. name: name,
  28. surname: surname,
  29. patronymic: patronymic,
  30. email: email,
  31. phone: phone
  32. })
  33. })
  34. .then(response => {
  35. if (response.ok) {
  36. return response.json();
  37. } else {
  38. throw new Error('Ошибка обновления данных');
  39. }
  40. })
  41. .then(data => {
  42. // Обновление данных пользователя на странице
  43. document.getElementById("name").textContent = data.name;
  44. document.getElementById("surname").textContent = data.surname;
  45. document.getElementById("patronymic").textContent = data.patronymic;
  46. document.getElementById("email").textContent = data.email;
  47. document.getElementById("phone").textContent = data.phone;
  48. // Отображение всплывающего окна
  49. document.getElementById("successPopup").style.display = "block";
  50. })
  51. .catch(error => {
  52. // Обработка ошибки
  53. console.error('Ошибка:', error);
  54. alert('Ошибка обновления профиля. Пожалуйста, попробуйте снова.');
  55. });
  56. });
  57. // Функция закрытия всплывающего окна
  58. function closePopup() {
  59. document.getElementById("successPopup").style.display = "none";
  60. }
  61. });