2013-05-07 1 views
3

이전에 수행했던 레거시 시스템에 고유하지 않은 이유로 POST 쿼리를 사용하여 특정 웹 인터페이스의 탭간에 전환합니다 .POST에서 도착한 페이지에서 chrome vs ff와 다르게 동작합니다.

경우에 따라 현재 탭을 새로 고침해야하며 일반적으로 js의 location.reload()을 사용하여이를 수행합니다. 그러나이 문맥에서는 Firefox와 Chrome에서 동작이 다릅니다.

특히 FF는 나를 현재 페이지로 이동시킨 POST 쿼리를 다시 제출하지만 Chrome은 그렇지 않습니다. 결과적으로 FF는 내가 시작한 곳에서 끝나고 Chrome은 주소 표시 줄의 URL로 이동합니다.

FF가 기본적으로 수행하는 목표를 달성하기위한 교차 브라우저 수단을 알고 있습니까? location.reload()? 위치 속성을 사용하여

답변

0

새로 고침 :

window.location = window.location; 
+1

이것은 내가하려는 일의 반대입니다. 이전 POST를 다시 제출하는 대신 FF와 Chrome을 현재 window.location으로 이동합니다. – cmw

+0

나는 당신이 페이지를 새로 고치려고하고 있다고 생각했다. 이 경우 양식을 다시 게시해야하는 경우 양식 제출을 다시 트리거해야합니다. –

1

사실

window.location.reload(true); 
+0

이 작업이 내가하려는 작업에 적합하지 않은 것 같습니다. 그 논쟁에 대해 아는 것이 좋다. location.reload()가 기본적으로 캐시에서 가져온 것을 알지 못했습니다. – cmw

1

함께 사용하십시오 나는이 크롬의 버그 믿습니다.

첨부 된 버그 설명을 살펴보십시오. 그 뒤로 버튼을 언급하지만 내가 세션 쿠키를 사용하여 양식이있는 경우

http://code.google.com/p/chromium/issues/detail?id=30479

, 나는 location.reload (true)를 사용하여 동일한 문제를 참조하십시오. 즉, IE와 FF에서는 다시 게시하고 다시로드합니다. Chrome에서는 그렇지 않습니다.

관련 문제