ajaxsubmit json 다운로드

문서를 읽고, 소스를 다운로드하고, GitHub에서 프로젝트에 기여할 수 있습니다. 문제 추적기에 문제를 제출하고 StackOverflow에 질문을 제출하십시오. .json 파일 의 다운로드를 트리거하는 브라우저를 방지하려면 “텍스트 / HTML”로 콘텐츠 유형 헤더를 설정합니다. jquery, ajax, jquery-plugin, json, json-form, html-form, 양식, jquery-form 그것은 데이터 타입 옵션이 `스크립트`로 설정되어 있고 서버가 실제로 다중 부분 양식 제출에 일부 자바 스크립트로 응답하는 경우에도 주의하는 것이 중요합니다, 응답의 콘텐츠 유형 헤더는 텍스트 / HTML에 강제로해야한다, 그렇지 않으면 인터넷 익스플로러 “파일을 다운로드하려면 사용자를 프롬프트합니다. 아무 일도 일어나지 않으면 GitHub 데스크톱을 다운로드하고 다시 시도하십시오. ajax 파일 업로드가 iframes을 통해 수행됨에 따라 iframe이 .json 파일을로드 한 후 Firefox가 다운로드로 해석하고 다운로드 프롬프트가 열렸다는 문제가 있었습니다. 나는 이것을 방지하기 위해 몇 가지 서버 설정을 재생할 수 있다고 확신하지만, 나는 이미 이것에 충분한 시간을 침몰했습니다. Ajax `success:` 옵션을 사용하려면 ajax를 사용하여 양식을 제출해야 합니다. 현재 는 기본적으로 전통적인 방법으로 양식을 제출하는 submit() 함수를 사용하고 있습니다. json 데이터를 다운로드 한 파일이나 브라우저에서 볼 수 있다는 사실은 이것이 일어나고 있음을 의미합니다. 콘텐츠 유형 응답 헤더가 올바르지 않아 브라우저가 어떻게 해야 할지 모르는 것처럼 들립니다.

응용 프로그램/json이어야 합니다. Firebug의 Net 패널을 사용하여 실제 응답 헤더를 탈삼진할 수 있습니다. 내가 잘 작동하는 양식을 제출 할 때 (내 모델은 제대로 생성되고 json로 렌더링), 하지만 대신 json 양식성공 기능에 의해 처리점점, 그것은 파이어 폭스에서 “stems.json”(내 줄기 생성 작업에 대한 경로)에 대한 다운로드를 묻는 메시지가 표시됩니다. 실제로 그 플러그인에 대한 ajaxSubmit 코드는 약간 해커입니다. ajaxSubmit 작업을 수행하려면 (작성 시) 서버는 JSON 데이터를 콘텐츠 유형 = 텍스트 / HTML로 반환해야합니다. 플러그인은 자동으로

 태그 등을 당깁니다 (소스 참조). 나는 그들이 json을 다시 당기기 위해 숨겨진 iframe을 얻으려고 할 때 json에게 텍스트를 처리하고 iframe에서 구문 분석하기로 결정한 것 같아요. 기본값: 응답의 예상 데이터 형식을 null입니다. 중 하나: null, `xml`, `스크립트` 또는 `json`.

dataType 옵션은 서버 응답을 처리하는 방법을 지정하는 방법을 제공합니다. 이것은 jQuery.httpData 메서드에 직접 매핑됩니다. 다음 값이 지원됩니다 : `json`: dataType == `json`이 서버 응답이 회피되어 `성공` 콜백으로 전달되는 경우, 지정한 경우 json 대신 텍스트로 출력을 렌더링했습니다. 이제 내 코드는 다음과 같습니다 : 우리는이 응답을 해석하고 양식 요약 세부 사항을 표시하기 위해 사용자 지정 함수를 사용해야합니다. 가장 먼저 해야 할 일은 이 설정을 빌드하는 페이지에서 jQuery 라이브러리를 사용할 수 있는지 확인하는 것입니다. 이렇게 링크: 이 양식이 제출되면 이름과 댓글 필드가 comment.php에 게시됩니다. 서버가 성공 상태를 반환하면 사용자에게 "감사합니다" 메시지가 표시됩니다.