Jquery 不使用Ajax提交FormData
我有一个用于注册用户的HTML表单。我正在从网络摄像头录制一个文件,我需要将视频文件与表单一起上传 这是我的代码(运行良好): 是否可以用Javascript提交表单,但行为与单击提交相同?所以没有成功或错误功能,只需转到web服务器返回的下一页。Jquery 不使用Ajax提交FormData,jquery,ajax,forms,form-data,Jquery,Ajax,Forms,Form Data,我有一个用于注册用户的HTML表单。我正在从网络摄像头录制一个文件,我需要将视频文件与表单一起上传 这是我的代码(运行良好): 是否可以用Javascript提交表单,但行为与单击提交相同?所以没有成功或错误功能,只需转到web服务器返回的下一页。 非常感谢。您有什么理由不使用AJAX吗?主要原因是,如果表单中没有错误,服务器正在执行重定向,我对此没有控制权。这样做的原因是,答案是整个HTML页面,用JQuery重新加载整个页面真的很糟糕。。。希望这是清楚的。您不能在jqXHR.done()上执
非常感谢。您有什么理由不使用AJAX吗?主要原因是,如果表单中没有错误,服务器正在执行重定向,我对此没有控制权。这样做的原因是,答案是整个HTML页面,用JQuery重新加载整个页面真的很糟糕。。。希望这是清楚的。您不能在
jqXHR.done()
上执行window.location='…'
吗?这不是一个好的解决方案,因为如果表单中有错误,就没有重定向。
$("#registration-form").submit(function(event) {
event.preventDefault();
var recordedBlob = recordRTC.getBlob();
var file = new File([recordedBlob], 'filename.webm', {
type: 'video/webm'
});
var formElement = document.getElementById("registration-form");
var formData = new FormData(formElement);
formData.append('appbundle_participant[videoFile][file]', file);
$.ajax({
url: '',
data: formData,
processData: false,
contentType: false,
type: 'POST',
success: function(data) {
// do some stuff
}
});
});