我在使用 jQuery Validation Plugin 时遇到问题,输入文件无法通过表单的方法识别。这就是我得到的:myform
表单的类validate
是我用来初始化插件的。它有效,它验证输入,但是当我点击“Guardar”时,print_r('$_FILES');
我得到的是array()
. 如果我没有将类添加validate
到表单中(不要初始化插件),那么我会得到数据但没有验证。我能做些什么?
我在使用 jQuery Validation Plugin 时遇到问题,输入文件无法通过表单的方法识别。这就是我得到的:myform
表单的类validate
是我用来初始化插件的。它有效,它验证输入,但是当我点击“Guardar”时,print_r('$_FILES');
我得到的是array()
. 如果我没有将类添加validate
到表单中(不要初始化插件),那么我会得到数据但没有验证。我能做些什么?
Ajax 请求无法处理文件输入类型,这就是您没有在服务器中获取文件数据的原因。
如果您只想支持 html5 FileAPI 支持的浏览器,那么您可以查看FormData以使用 ajax 提交文件。您可以在此处和此处阅读有关如何使用 FormData 的更多信息
var form = document.getElementById('form-id');
var formData = new FormData(form);
$.ajax({
url: '',
data: formData
})
如果您想支持跨浏览器,那么您需要查看像jQuery Form这样的插件,它使用 iframe 模拟类似 ajax 的表单处理。