今天用到一个ajax跨域提交表单的方法,用的时候出现一些问题,这里记录一下。首先记录一下ajax部分的代码,这一部分没什么特殊的,操作也很简单:
$.ajax({
dataType:'jsonp',
url:"http://url/send",
data: $('#sendForm').serialize(),
jsonp:'callback',
async:false,
contentType: "application/jsonp; charset=utf-8",
success:function(data) {
if(data){
alert("内容提交成功!"); window.location = "/";
} else {
alert("内容提交失败!");
}
},
error: function(err) {
//console.log(err);
}
});
提交后却发现了一个中文乱码的问题,这个在之前未跨域的json方式没有遇到。折腾了半天才解决,发现传递过期的中文编码竟然不是UTF-8的,而是iso-8859-1编码,转换成UTF-8就成功了。这点要特别记录一下。