>웹 프론트엔드 >프런트엔드 Q&A >Jquery 직렬화가 중국어 왜곡 문자를 제출하는 경우 수행할 작업

Jquery 직렬화가 중국어 왜곡 문자를 제출하는 경우 수행할 작업

藏色散人
藏色散人원래의
2023-02-09 10:33:361594검색

중국어 잘못된 문자의 jquery 직렬화 제출에 대한 해결 방법: 1. 해당 jquery 파일을 엽니다. 2. "decodeURIComponent(XXX,true);" 메서드를 호출하여 데이터를 디코딩하여 잘못된 코드 문제를 해결합니다.

Jquery 직렬화가 중국어 왜곡 문자를 제출하는 경우 수행할 작업

이 튜토리얼의 운영 환경: Windows 10 시스템, jquery 버전 3.2.1, DELL G3 컴퓨터

jquery 직렬화가 중국어 왜곡 문자를 제출하는 경우 어떻게 해야 합니까?

jquery에서 serialize()를 사용하여 양식을 직렬화할 때 중국어 왜곡 문제가 발생합니다.

//登录
$(".register-btn").click(function() {
var form = $("#register-form").serialize();
//序列化中文时之所以乱码是因为.serialize()调用了encodeURLComponent方法将数据编码了
            //原因:.serialize()自动调用了encodeURIComponent方法将数据编码了   
            //解决方法:调用decodeURIComponent(XXX,true);将数据解码    
            form = decodeURIComponent(form,true); //关键点
var formArray = form.split("&");
var obj = {};
for(var i = 0;i<formArray.length;i++){
var d = formArray[i].split(&#39;=&#39;);
obj[d[0]] = d[1];
}
if(obj.mobile == &#39;&#39;){
layer.msg("手机号不能为空");
return;
}
if(obj.plate == &#39;&#39;){
layer.msg("车牌号不能为空");
return;
}
if(obj.passWord == &#39;&#39; || obj.passWord2 == &#39;&#39;){
layer.msg("密码不能为空");
return;
}
if(obj.passWord != obj.passWord2){
layer.msg("两次密码不一致,请重新输入");
return;
}
my.post({
url:"user/register",
contentType : &#39;application/json;charset=utf-8&#39;, //设置请求头信息
data:JSON.stringify(obj),
done:function(result){
if(result.code == 200){
setTimeout(function(){
location.href = "./home";
},2000);
}
}
});
});

권장 학습: "jQuery Video Tutorial"

위 내용은 Jquery 직렬화가 중국어 왜곡 문자를 제출하는 경우 수행할 작업의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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