> 웹 프론트엔드 > JS 튜토리얼 > JavaScript를 사용하여 양식 데이터의 자동 저장 기능을 구현하는 방법은 무엇입니까?

JavaScript를 사용하여 양식 데이터의 자동 저장 기능을 구현하는 방법은 무엇입니까?

WBOY
풀어 주다: 2023-10-20 12:10:46
원래의
950명이 탐색했습니다.

如何使用 JavaScript 实现表单数据的自动保存功能?

JavaScript를 사용하여 양식 데이터의 자동 저장 기능을 구현하는 방법은 무엇입니까?

웹사이트 개발에서 양식은 자주 사용되는 요소로, 사용자가 입력한 양식 데이터를 저장하는 것은 중요한 기능적 요구사항입니다. 사용자가 양식을 작성할 때 실수로 페이지를 새로 고치거나, 브라우저를 닫거나, 실수로 인터넷 연결을 끊으면 이전에 입력한 데이터가 손실되어 사용자 환경에 좋지 않습니다. 이 문제를 해결하기 위해 JavaScript를 사용하여 양식 데이터의 자동 저장 기능을 구현하여 사용자가 입력한 데이터가 어느 정도 보호되도록 할 수 있습니다.

다음은 데이터를 저장하는 localStorage 객체를 이용하여 Form 데이터 자동 저장 기능을 구현하는 방법입니다.

먼저 양식의 각 입력 요소(예: 입력, 텍스트 영역 등)에 이벤트 리스너를 추가하고 사용자가 입력하면 데이터를 localStorage에 저장합니다. 코드는 다음과 같습니다.

// 为表单元素添加事件监听
const form = document.querySelector('form');
const inputs = form.querySelectorAll('input, textarea');

inputs.forEach(input => {
  input.addEventListener('input', saveFormData);
});

// 保存表单数据到 localStorage
function saveFormData() {
  const formData = {};

  inputs.forEach(input => {
    formData[input.id] = input.value;
  });

  localStorage.setItem('formData', JSON.stringify(formData));
}
로그인 후 복사

다음으로 페이지가 로드되면 양식 데이터가 localStorage에 저장되었는지 확인하고, 그렇다면 양식에 데이터를 채워야 합니다. 코드는 다음과 같습니다.

// 检查 localStorage 中是否保存了表单数据
window.addEventListener('DOMContentLoaded', () => {
  const formData = localStorage.getItem('formData');

  if (formData) {
    const savedData = JSON.parse(formData);

    inputs.forEach(input => {
      const id = input.id;
      input.value = savedData[id] || '';
    });
  }
});
로그인 후 복사

마지막으로 사용자가 양식을 제출할 때 localStorage의 데이터를 지워서 다음에 사용자가 페이지에 들어갈 때 양식이 비어 있는지 확인해야 합니다. 코드는 다음과 같습니다.

// 清除 localStorage 中保存的表单数据
form.addEventListener('submit', () => {
  localStorage.removeItem('formData');
});
로그인 후 복사

위 코드를 사용하면 사용자가 양식에 데이터를 입력하면 해당 데이터가 자동으로 localStorage에 저장됩니다. 사용자가 페이지를 새로 고치거나, 브라우저를 닫거나, 페이지를 다시 열 때 이전에 입력한 데이터가 제출되지 않은 경우, 사용자가 페이지를 다시 입력하면 이전에 입력한 내용이 양식에 표시됩니다.

localStorage는 도메인 이름 단위로 저장되기 때문에 동일한 도메인 이름의 다른 페이지도 localStorage의 데이터를 읽어 데이터를 공유할 수 있다는 점에 유의하세요.

위는 JavaScript를 이용하여 폼 데이터 자동 저장 기능을 구현한 코드 예시입니다. 이 기사가 도움이 되기를 바랍니다!

위 내용은 JavaScript를 사용하여 양식 데이터의 자동 저장 기능을 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿