2010-04-26 5 views
0

페이지를 새로 고침/다시로드하거나 뒤로 버튼을 사용하면 Firefox는 사용자가 멀리 탐색하기 전에 입력 한 내용을 다시 채우기에 충분합니다. 이 비록유효성 검사 및 Firefox의 입력 캐싱

은 내 페이지에 추가 경고 내 JQuery와 유효성 검사와 저장되지 않은 변경을 트리거하지 않는 멋진 기능입니다.

(매 시간마다 컨트롤의 이름을 변경하지 않고) 파이어 폭스에서이 기능을 비활성화하거나 방법이 있나요 또는 파이어 폭스 이벤트를 캡처?

답변

1

,이 같은뿐만 아니라 유효성 검사를 트리거 한 번 .valid() 전화 :

$(function() { 
    $('#myForm').validate({ /* options here */ }); 
    $('#myForm').valid(); 
}); 
+0

고마워, 나는 그것을 시도 할 것이다. –

+0

이것은 유효성 확인을 위해 작동하지만 (고맙습니다.) 페이지가 무언가 변경된 것이 아니라 유효하다고 만 알려줍니다. 저장되지 않은 변경 사항이 있음을 사용자에게 알리고 탐색을 경고하라. 표시되는 내용이 서버에서 가져온 내용이 아니라는 것을 알 수있는 방법은 무엇입니까? –

+0

@Chris - 캐시 된 입력을 원하십니까? 그것은 당신이 * 모든 페이지를 캐싱하지 못하도록하려는 것 같습니다. 대답이 다양하기 때문에 서버 측 프레임 워크를 사용하고있는 경우입니다. –

0

당신은 모든 이벤트 (사용자 정의 여부를) 트리거 trigger() 방법을 사용할 수 있습니다.

당신이 Validate 이벤트가 Suposing :

$(document).ready(function() 
    { 
     $('#yourform').trigger('validate'); 
    } 
); 

유효성 검사 플러그인 기능의 사용은 단순히 수행의 유효성을 검사 할 수 없다면 :

문서가 준비되면 트리거됩니다
$(document).ready(function() 
    { 
      validate($('#yourform')); 
    } 
); 

.

브라우저가 캐시 된 입력 값을로드하는 동안로드 시간을 피하려면 setTimeout을 사용하십시오.

+0

을 나는 JQuery와 유효성 검사 플러그인을 사용하고 있는데 나는 이미에 확인하는 전화를하고 있어요 문서 준비. 파이어 폭스가 유효성 검사를 실행하는 이벤트를 트리거한다고 생각하지 않습니다. 파이어 폭스가 기본값을 대신 오버라이드하는 것 같습니다. –

+0

코드에 의해 검색되는 값을 보려면 console.log ($ ('# youform input') .val())를 사용하십시오. –

0

페이지가로드 된 후 몇 초 후에 양식 내용을 확인하고 확인하기 위해 지연 기능을 추가 하시겠습니까? 아마도 모든 브라우저를 포착하는 가장 안전한 방법 일 수 있습니다. 일부 브라우저는 전체 페이지가로드되면 저장된 양식 데이터 만 삽입합니다. document.ready.validate() 전화 후

+0

지연된 수표가 제 마지막 수단이되어야합니다. 내려가는 것은 위험한 길입니다. 또한 파이어 폭스가 변경된 이벤트를 트리거하지 않으면 변경된 사항을 어떻게 알 수 있습니까? –

관련 문제