2010-08-10 3 views
2

웹 페이지에 웹 양식이 있습니다. 사용자가 페이지를 떠나기 전에 폼에 "예"또는 "아니오"버튼이 있는지를 묻는 자바 스크립트 팝업 메시지를 사용자에게 묻습니다. 사용자가 "예"를 클릭하면 이동하려는 페이지로 이동합니다. 그러나 사용자가 "아니오"를 클릭하면 사용자는이 페이지에 남아 있습니다.웹 페이지를 떠나기 전에 양식을 작성하라는 메시지가 나타납니다.

나는 자바에 익숙하지 않아서 어떤 지침이든 크게 감사 할 것입니다. 나는 아래와 같은 것을 사용할 것이라고 의심하고 있습니다.

<ELEMENT onbeforeunload = "handler" ... > 

미리 감사드립니다. 이것은 당신이 좋은 생각하지만, 내가 생각한 것 같아 다른 사람에 의해서 필요하고 무엇인가, 또는 어떤 경우

분할 P.

+0

사용자가 떠나고 싶지 않은지 물어 보지 못하도록 막으려면 떠나야합니다. – lincolnk

답변

2

1 일 (덕분에 내가 돕고 @horray) : 예를 들어.

양식이 프로그래밍 방식으로 채워 졌는지 여부를 감지하는 것이 더 좋을 수 있습니다. 사용자가 중요한 데이터를 제공하지 않고 계속하려면 클릭하면됩니다. 그들이 그것을 제공하지 않기로 결정하면, 그들을 보내주십시오. 예를 들어

: 당신은 링크를 클릭 핸들러에 그것을 넣어 당신이 언급 한 바와 같이 버튼을 제출하거나 beforeunload 이벤트 수

var requiredField = document.getElementById("required"); 
if (requiredField.value == "") 
{ 
    if (!confirm("Are you sure you want to go without saving your work?")){ 
     requiredField.focus(); 
    } 
} 

.

4

는 잘 모르겠어요 당신은 선택의 여지가있는 경우 , 하지 마십시오. 사용자가 페이지를 떠나기를 원할 경우, 이미 알고있는 것을 말하지 않고 페이지를 떠나게하십시오. 또한 몇몇 최신 브라우저에는 이미이 기능이 내장되어있어 사용자에게 짜증나는 또 다른 계층을 추가하는 것입니다.

그렇다면 this page을 살펴보면 알 필요가있는 모든 것을 알려줍니다. onbeforeunload 황당하게 무엇

은 이벤트 처리기에 전혀 아무것도 반환하는 경우 그 또는 그녀가 정말 확실 경우 그들이 페이지

를 마칠 사용자를 묻는 확인 경고 상자를 팝업 것입니다 당신은 return 문에 문자열을 포함하여 두 줄 사이에 자신의 설명 텍스트를 삽입 할 수 있습니다

....

<script type="text/javascript"> 
    window.onbeforeunload = function() { 
    return "The text you want the alert box to say."; 
    } 
</script> 
+0

+1. 이것은 내가 말하는 것보다 훨씬 덜 중요한 것을 말합니다. –

+0

데이터를 수집하려면이 작업을 수행해야합니다. 이미 개발 된 사이트에서이 작업을 수행하고 있습니다. 귀하의 의견을 보내 주셔서 감사합니다. @Rob, 나는이 경우에 "snark"가 웹 사이트 디자이너에게 가장 잘 전달 될 것이라고 믿습니다. –

+0

충분히 재미있게,이 작은 "quirk"는 실제로이 경우 내 장점으로 작용할 것입니다. 고맙습니다. –

관련 문제