2013-11-14 7 views
1

사용자가 AJAX 데이터를 사용하여 페이지 매기기를 수행 할 수있는 데이터 목록이 있으며 그 데이터를 컨테이너에 추가합니다. 사용자가 항목을 클릭하여 다른 페이지로 이동하고 브라우저에서 기본 돌아 가기 버튼을 클릭하면 모든 AJAX 추가 데이터가 더 이상 DOM에 나열되지 않습니다. 이 문제를 어떻게 해결할 수 있습니까? 이것은 jQuery 문제입니까?AJAX DOM 요소가 뒤로 버튼에 저장되지 않았습니다.

페이지 매김 (# page2)이 발생할 때 URL 해시를 변경해 보았지만 다시 돌아 왔을 때 여전히 남아 있지 않습니다.

아이디어가 있으십니까?

+1

history.pushState()를 사용하고 페이지를 업데이트하기 위해 뒤로 버튼을 클릭 할 때'popstate' 이벤트를 처리해야합니다. –

+1

뒤로 단추는 브라우저에 다른 페이지를로드하도록 요청합니다. 현재 페이지에로드 한 내용은 특정 조치를 취하지 않으면 잃게됩니다. 아마도 localStorage 또는 쿠키를 볼 수는 있지만로드하는 페이지에 적용 할 코드가 필요합니다. @MikeEdwards 덧글도 참조하십시오. –

+0

@MikeW 완전히 사실이 아닙니다. 내역을 활용하여 단일 페이지 내에서 동일한 내용의 콘텐츠를 표시 할 수 있습니다. – charlietfl

답변

0

기본적으로 데이터를 저장하려면 어딘가에 데이터를 작성해야합니다. 그리고 클라이언트 측 영속성이 없다면 이는 서버 측 영속성을 의미합니다. 즉, 데이터를 편집 할 때 다시 서버에 기록해야합니다. 일부 기술이 클라이언트에 지속성을 허용하는 브라우저로 들어오는 것을 알고 있지만 직접 연구하지는 않았습니다.

http://tiddlywiki.com/에서 볼 수 있습니다. 이 단일 페이지 응용 프로그램은 특정 브라우저에서 신뢰할 수있는 애플릿을 비롯한 다양한 메커니즘을 사용하여 데이터를 파일 시스템의 페이지로 다시 다시 쓰므로 사용자가 변경 한 내용을 유지하고 사용자가 다시 돌아올 때 사용할 수 있습니다. 그러나 그것은 http : // land에 사는 것과는 다릅니다. 웹 환경에서는 영구 데이터를 다시 서버에 다시 작성합니다.

+0

잘 모르겠습니다 - 정사각형 같은 페이지를보세요. 활동 피드를 아래로 스크롤하면 데이터가 추가됩니다. 그런 다음 항목으로 들어가면 뒤로 버튼을 누르십시오. 내용은 여전히있을 것입니다. 데이터를 저장하지 않으려 고합니다. 브라우저의 캐시에 추가하면됩니다. 다시 버튼에 페이지의 새 버전을로드해서는 안됩니다. 권리? – gregavola

관련 문제