>  기사  >  웹 프론트엔드  >  jquery $.post 왜곡 문제를 해결하는 방법

jquery $.post 왜곡 문제를 해결하는 방법

藏色散人
藏色散人원래의
2020-12-21 11:11:362343검색

Jquery $.post 왜곡된 솔루션: 1. 코드를 "contentType: "application/x-www-form-urlencoded; charset=utf-8"0"으로 수정합니다. 2. 코드 "$.ajax({. ..})"가 됩니다.

jquery $.post 왜곡 문제를 해결하는 방법

이 튜토리얼의 운영 환경: windows7 시스템, jquery1.10.0 버전 이 방법은 모든 브랜드의 컴퓨터에 적합합니다.

추천 튜토리얼: jquery 비디오 튜토리얼

jquery $.post 왜곡된 솔루션:

$.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(){
    ...
  }
})

첫 번째 것을 사용하는 것이 좋지만 실제 상황을 기반으로 한 경우도 있습니다. 사람들이 추천합니다. encodeURIComponent는 문자 변환을 수행합니다.

ajax에서 제출한 잘못된 데이터에 대한 경험을 요약합니다.

문자가 깨지는 것을 방지하려면 다음 단계를 수행할 수 있습니다.

해결 방법

1. , 데이터베이스 인코딩 및 웹 페이지 콘텐츠 유형 인코딩

Check40099c936941750150d8ac2e2f974f38

UTF 사용을 권장합니다. 8 중국어의 경우 gbk/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 $.post 왜곡 문제를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.