jquery ajax에서 제출한 잘못된 코드에 대한 해결 방법: 1. 인코딩 설정을 통합합니다. 2. post 메서드를 사용하여 매개변수를 전달합니다. 3. js 프런트 엔드에서 인코딩을 이스케이프 처리한 다음 백그라운드에서 디코딩합니다. 4. contentType을 전체적으로 설정하고 인코딩만 지정하면 됩니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, jquery 버전 1.10.0, Dell G3 컴퓨터.
권장: jquery 튜토리얼
jquery ajax가 잘못된 데이터를 제출하면 어떻게 해야 합니까?
jquery를 사용하여 HTML5 응용 프로그램을 처리할 때 Firefox에서 테스트하면 정상입니다. 사용자가 패드를 사용하여 액세스하면 문자가 깨져 있다고 직접 테스트해 보니 이런 문제가 있는 것으로 나타났습니다. chrome 및 ie 커널에서 이 문제가 utf-8로 설정되면 Firefox만 charset=utf-8 헤더 파일을 전달하고 Chrome과 IE는 이를 지정하지 않으므로 잘못된 문자가 나타납니다.
코드는 다음과 같습니다.
$.ajaxSetup({ contentType: "application/x-www-form-urlencoded; charset=utf-8" }); $.post("test.php", { name: "i5a6", time: "2pm" }, function(data){ process(data); }, "json");
$.ajax({ url:url, type:"POST", data:data, contentType:"application/x-www-form-urlencoded; charset=utf-8", dataType:"json", success: function(){ ... } })
Solution
1. 파일 인코딩, 데이터베이스 인코딩 및 웹 페이지를 포함하여 인코딩을 통일된 상태로 유지하세요. content-type 인코딩
Check중국어의 경우 UTF-8 사용을 권장합니다. gb2312로 인해 문자가 깨질 수 있습니다2. get 대신에 post를 사용하여 보내기get 메소드는 링크를 통해 매개변수를 전달하고 자동으로 urlEncode(인코딩)를 수행하며 각 브라우저의 인코딩 방법이 다를 수 있습니다. 게시물을 사용하면 이러한 상황을 피할 수 있습니다. 3. 전송하기 전에 js 프런트엔드에서 인코딩을 이스케이프한 다음 백그라운드에서 디코딩하여 데이터를 얻습니다. 4. contentType을 전역으로 설정하고 인코딩을 지정합니다. jquery ajax는 데이터를 인코딩하고 전송하는 데 utf-8을 사용하기 때문에 IE는 데이터를 전송할 때 charset=utf-8을 추가하지 않아 문자가 깨졌습니다(IE는 기본적으로 iso-8859-1 인코딩을 사용합니다)코드는 다음과 같습니다. 다음:
$.ajaxSetup({ contentType: "application/x-www-form-urlencoded; charset=utf-8" });
프로그래밍 교육
! !위 내용은 jquery ajax가 잘못된 코드를 제출하는 경우 수행할 작업의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!