>  Q&A  >  본문

javascript - jQuery-File-Upload는 IE8 문제와 호환됩니다: 업로드된 파일이 응답을 받을 수 없습니다

먼저 이 문제와 관련된 코드를 제공하세요.
다음 코드는 IE9+에서는 성공적으로 호환되었지만 IE8에서는 실패했습니다

으아악

제가 겪은 문제는 소위 JSON 데이터가 반환되는 것이 아니라 다운로드를 개선하는 IE 브라우저의 문제로 이 문제를 해결했습니다.
현재 문제는 IE8에서는 이 프로그램이 완료 및 실패 기능을 콜백할 수 없지만 IE9+ 브라우저 및 기타 주류 브라우저에서는 가능하다는 것입니다.

으아악

위 프로그램의 인쇄 결과에 따르면 추가 기능이 성공적으로 수행되었음을 알 수 있습니다.
네트워크 통신도 모니터링했는데 loading.gif로만 통신이 로딩 중이라는 표시만 있고 그 외 관련 답변은 없습니다.
IE8의 네트워크 통신은 다음과 같습니다.

이것은 또한 done 및 Fail 함수가 다시 호출되지 않는다는 것을 증명하는데, 문제는 무엇입니까?

성공적으로 호환되는 브라우저의 네트워크 통신은 다음과 같습니다:

어제 IE9 호환성 문제를 해결하려고 했는데 그 이후에도 IE8 호환성 문제가 해결되지 않았습니다. 스택 오버플로 관련 문제를 검색하는 데에도 거의 하루가 걸렸지만 아무 것도 얻지 못했습니다.

伊谢尔伦伊谢尔伦2708일 전1360

모든 응답(1)나는 대답할 것이다

  • PHP中文网

    PHP中文网2017-06-12 09:33:48

    내가 주체다. 나는 이 문제를 해결하기 위해 이틀을 꼬박 보냈고 마침내 해결했습니다.
    이 문제를 해결할 수 있었던 이유는 이전 사람들이 작성한 코드 로직을 다시 검토했기 때문입니다. 이 문제는 실제로 HTML 코드와 밀접한 관련이 있습니다. 이전에는 JS 코드에만 관심을 가졌습니다.

    • HTML 코드

    으아악

    클릭<버튼>을 통해 실제로 클릭<input type="file">이 실행되는 것을 확인할 수 있습니다.
    이것은 매우 일반적인 기술입니다. <input type="file">이 보기 흉하고 맞춤설정하기 어렵기 때문입니다(적어도 저는 CSS를 맞춤설정하는 방법을 모릅니다). 그래서 입력을 숨기고 버튼을 통해 입력을 호출하면 대부분의 사람들의 선택이 됩니다.
    그러나 IE8에서는 보안상의 이유로 이를 허용하지 않기 때문에 입력이 호출되는 것처럼 보이지만 데이터를 얻지 못합니다.

    으아악

    어떻게 이런 식으로 안전을 확보할 수 있는지 모르겠습니다.

    따라서 이러한 제한을 피하기 위해 HTML 코드가 변경됩니다. 버튼을 클릭하는 것처럼 보이지만 실제로는
    input

    을 클릭하는 것입니다. 으아악

    SASS

    으아악

    이 블로그를 읽은 후 시도한 방법입니다: http://wenzhixin.net.cn/2014/... 작동합니다

    내 생각: 디버깅을 통해 문제의 근본 원인을 파악하고, 문제를 기반으로 Google에서 답변을 검색합니다.

    회신하다
    0
  • 취소회신하다