양식을 제출할 때 파일 업로드 진행률 표시 줄과 같은 몇 가지 다른 작업을 수행 할 때까지 제출 작업을 방지하고 싶습니다. event.preventDefault() function not working in IE과 같은 SO 질문을 기반으로이 코드를 설정했습니다.IE 10의 event.preventDefault
$(document).ready(function(){
$("#fileform").submit(function(e){
if(!e) e = window.event;
if (e.preventDefault){
// Firefox, Chrome
e.preventDefault();
}else{
// Internet Explorer
e.returnValue = false;
}
// other code
}
}
모든 것이 Firefox와 Chrome에서 잘 작동합니다. 제출 작업이 금지되고 진행률 표시 줄이 나타나면 양식을 제출할 때 제출됩니다. 그러나 IE 10에서는 if 문의 첫 번째 조건이 실행되고 양식이 제출하려고 시도하는 것으로 보입니다 (IE 10의 제출 거품이 표시됨). 첫 번째 조건이 실행되는 이유는 무엇입니까?
IE 10은 IE 8 및 9가 지원하지 않는 Defected()를 지원합니까? 그렇다면 Internet Explorer 8, 9, 10에서 Firefox, Chrome, Safari 등을 방해하지 않는 양식 제출 조치를 어떻게 적절하게 처리 할 수 있습니까?
, 아무것도 변경되지 않습니다. Firefox와 Chrome은 여전히 정상적으로 작동하지만 진행률 막대가 IE에 표시되지 않습니다 (IE 양식 제출 거품이 나타남). –
네가 맞다. 이벤트가 jQuery에서 정규화되고 e.preventDefault()가 예상대로 작동합니다. 감사. –