在jQuery Form Plugin的帮助下,我们正在上传文件以及常规表单字段。一切都很好。 但如果有任何utf-8特殊字符,那么它将被转换为服务器端的一些垃圾字符。 检查请求标头后,我们发现在内容类型中缺少charset = utf-8。尝试在提交时添加内容类型但没有任何帮助。
var options = {
success: successfunc,
contentType: 'multipart/form-data; charset=utf-8',
};
$("#formid").ajaxSubmit(options);
在分析了jQuery脚本文件后,我们发现了
var s = $.extend(true, {}, $.ajaxSettings, options, {
contentType: false,
processData: false,
cache: false,
type: 'POST'
});
如果更改了jQuery中的内容类型,则由于边界值问题,服务器代码无法获取请求参数。是否无法上传文件并在单个ajax提交中发送utf-8特殊字符?