2013-03-16 1 views
0

ASP.NET에서 반환 된 날짜와 JavaScript에서 반환 된 날짜를 동기화해야합니다. 그래서 숨겨진 필드의 서버에서 날짜를 보낸 다음 JavaScript에서 새 Date()를 가져 와서 시간 오프셋을 가져옵니다. 시차의 근사값 만 필요합니다.브라우저 캐시에 영향을받지 않는 페이지 수정 날짜를 얻는 방법은 무엇입니까?

페이지가 처음로드 될 때 모두 잘 작동합니다. 숨겨진 필드에 저장된 서버 날짜와 값 형식 JavaScript가 일치합니다. 그러나 페이지에서 탐색 한 다음 뒤로 단추를 클릭하면 이제 브라우저 캐시에서 페이지가 제공되므로 JavaScript 값과 비교하여 서버 값이 오래되었습니다.

두 날짜의 일관성을 유지할 수있는 방법이 있습니까? 캐시에서 가져온 것이 든 아니면 캐시에서 가져 오지 않은 것이 있습니까? 페이지가 브라우저 캐시에서 오는 경우 변경되지 않는 클라이언트 측 페이지 수정 날짜가 필요합니다. 나는 document.lastModified를 시도했지만, 캐시에서 페이지가 오면 변경된다.

감사합니다.

답변

0

두 번째 숨겨진 입력에 오프셋을 저장하지 않는 이유는 무엇입니까?

페이지가로드되면 숨겨진 "오프 세트"입력의 값을 확인하고 비어있는 경우 (원래 숨겨진 입력을 참조로 사용) JavaScript를 채우십시오. 사용자가 멀리 탐색 한 다음 뒤로를 클릭하면 오프셋 필드에 계산 된 값이 계속 포함되며 JavaScript는이를 업데이트하지 않습니다.

@ user1044169 : 좋은 캐치; 나는 you are correct라고 생각한다. 최선의 조언은 데이터를 쿠키에 저장하는 것입니다.

+0

확실하지 않습니다. 내가 올바르게 이해한다면, 브라우저 캐시에있는 것은 DOM 조작없이 서버로부터받은 페이지의 복사본입니다. 따라서 사용자가 [뒤로] 단추를 클릭하면 숨겨진 오프셋 필드가 이전에 값이있는 경우에도 emtpy가됩니다. – user1044169

관련 문제