easyui form表單.serialize()序列化後中文亂碼問題原因及解決
阿新 • • 發佈:2019-02-10
loginAndRegDialog=$('#loginAndRegDialog').dialog({
closable:false,
modal:true,
buttons:[{
text:"登入",
handler:function(){
var params=$('#LoginInputForm').serialize();
params = decodeURIComponent(params,true);
console.info(params);
$.ajax({
url:'userController.do?login',
data:$('#LoginInputForm').serialize(),
cache:false,
dataType:'json',
success:function(r){
$.messager.alert('My Title',r.msg,'error');
}
});
params = decodeURIComponent(params,true); 還有一種辦法是直接 --- console.info($('#name').val()); loginAndRegDialog=$('#loginAndRegDialog').dialog({
closable:false,
modal:true,
buttons:[{
text:"登入",
handler:function(){
var params=$('#LoginInputForm').serialize();
params = decodeURIComponent(params,true);
console.info($('#name').val());
$.ajax({
url:'userController.do?login',
data:$('#LoginInputForm').serialize(),
cache:false,
dataType:'json',
success:function(r){
$.messager.alert('My Title',r.msg,'error');
}
});
closable:false,
modal:true,
buttons:[{
text:"登入",
handler:function(){
var params=$('#LoginInputForm').serialize();
params = decodeURIComponent(params,true);
console.info(params);
$.ajax({
url:'userController.do?login',
data:$('#LoginInputForm').serialize(),
cache:false,
dataType:'json',
success:function(r){
$.messager.alert('My Title',r.msg,'error');
}
});
}
就是在呼叫序列化的時候,中文亂碼,
原因:.serialize()自動呼叫了encodeURIComponent方法將資料編碼了 解決方法:呼叫decodeURIComponent(XXX,true);將資料解碼 例如: var params=$('#LoginInputForm').serialize();params = decodeURIComponent(params,true); 還有一種辦法是直接 --- console.info($('#name').val()); loginAndRegDialog=$('#loginAndRegDialog').dialog({
closable:false,
modal:true,
buttons:[{
text:"登入",
handler:function(){
var params=$('#LoginInputForm').serialize();
params = decodeURIComponent(params,true);
console.info($('#name').val());
$.ajax({
url:'userController.do?login',
data:$('#LoginInputForm').serialize(),
cache:false,
dataType:'json',
success:function(r){
$.messager.alert('My Title',r.msg,'error');
}
});
}