2010-12-30 4 views
1

backbutton이 내 asp.net mvc 페이지 중 하나에서 작업하는 것을 막으려 고하고 있습니다. "window.history.forward (1);"를 입력하면 두 곳을 읽었습니다. 내 페이지에서 뒤로 버튼이 주어진 페이지에서 작동하지 않도록합니다. 이 내 페이지에서 한 것입니다 :javascript "window.history.forward (1);" 작동하지 않음

<script type="text/javascript"> 
     $(document).ready(function() { 
      window.history.forward(1); 
     }); 
    </script> 

이 작동하지 않는 것 같습니다. 잘못 사용하고 있습니까? 아니면이 방법이 잘못 되었습니까? 감사.

<script type="text/javascript"> 
    function preventBack() { 
     window.history.forward(); 
    } 
    setTimeout("preventBack()", 0); 
    window.onunload = function() { 
     null 
    }; 
</script> 
+3

거기에 여분의 '});가 있습니다. 그 구문 오류로 인해 귀하의 페이지가 아무 것도하지 못하게 될 수 있습니다. –

답변

0

확실하지 않음 뒤로 버튼을 사용하지 않으려는 페이지 앞에 모든 페이지에 history.forward()을 넣은 다음 사용자가 뒤로 버튼을 누를 때마다 뒤로 버튼을 누를 때마다 뒤로 버튼을 전달합니다. 일반적인 사용은 일단 진행되면 다른 사람들이 페이지로 돌아 오는 것을 방지하는 것입니다 (일반적으로 주어진 선형 순서로). 예를 들어, 은행 웹 사이트의 로그인 순서에 사용되는 경우가 있습니다.

내가 아는 한, 실제로는 을 사용할 수 없으며 뒤로 버튼을 사용할 수 없습니다. 때로 사람들은 새로운 창에서 페이지를 열어 페이지를 열어서 페이지를 열지 않고 다시 돌아갈 수 없습니다. 다른 사람들은 사용자에게 저장되지 않은 데이터가 손실 될 수 있음을 알리기 위해 되돌아 가기 전에 경고 메시지를 표시합니다 (주된 관심사 인 경우). 말했다

, 어쩌면 이것은 당신을 도울 것입니다 : http://viralpatel.net/blogs/disable-back-button-browser-javascript/

+0

시도해 보니 행운이 없습니다. 브라우저의 뒤로 버튼은 내 키보드의 뒤로 버튼뿐만 아니라 계속 작동합니다. 흠, 나는 길을 잃었다. – RayLoveless

1

어쩌면 :

<script type="text/javascript"> 
    function disableBackButton() 
    { 
    window.history.forward(); 
    } 
    setTimeout("disableBackButton()", 0); 
    $(document).ready(function() { 
     disableBackButton(); 
    }); 
</script> 
+0

흠,이 시도하고 작동하지 않았다. 다른 생각? – RayLoveless

3

내가 사용이 트릭을 본 적이 방법 ...이 관련이 있지만, 나는 그것을 발견하고 가치가 시도 될 수있는 경우

0

이 나를 위해 노력하고 있습니다 ... 그것은 도움이 당신을 위해 희망 ...

<script type="text/javascript"> 
    window.history.forward(); 
    function noBack(){ 
    window.history.forward(); 
    } 
</script> 

$(document).ready(function() { 
      noBack(); 
}); 
+0

안녕하세요, 브라우저의 뒤로 버튼을 한 번만 클릭하면 작동합니다. 다시 버튼을 클릭하면 이전 페이지로 이동합니다. 의견을 말하십시오 – Mathee

+0

Michel Taufen과 Gauri의 대답을 시도해보십시오. 도움이 될 것입니다 .. –

0

당신은 사용할 수 있습니다

history.go(index) 
index =0 //for the current page. 
index>0 //e.g 1,2 for forward navigation 
index<0 //e.g -1,-2 for backward navigation 

history.go(-2) 
1

뒤로 버튼을 사용하지 않으려는 페이지에서 사용하십시오.

window.history.forward (1);
0
<SCRIPT type="text/javascript"> 
    window.history.forward(); 
    function noBack() { window.history.forward(); } 
</SCRIPT> 

그리고 body 태그에 다음 코드를 작성하십시오.

<body onload="noBack();" onpageshow="if (event.persisted) noBack();" onunload=" " > 

시도해보십시오.

0
 <script> 
      function preventBack() { 
       window.history.forward(); 
      } 

      setTimeout("preventBack()", 0); 

      window.onunload = function() { 
       null 
      }; 
     </script> 
+0

위의 스크립트가 제대로 작동하므로 시도해보십시오 ... –

관련 문제