我起初知道这没有意义但是,我得到了这个场景,我需要一些帮助,以便JqueryFileUpload找到最佳状态。让我们来吧:
在用户注册后,我有一个页面,其中新用户用他的信息填写表格(正常输入文件)然后,这个表格甚至有可能(不是必须的)上传个人资料图像(这样做) ajax,在这种情况下使用JqueryFileUpload Plugin)。问题是,如果用户不想上传图片,JqueryFileUplaod不会发送请求,因为它没有文件。
我想检查是否有文件,如果没有,请发送带有正常请求ajax的请求。如果这是更好的方法,可以检查其中是否有任何文件?检查输入文件的值是否有效。 $('#fileupload').val()
这是我提交请求的代码:
HTML
<!-- others fields -->
<div id="file-uploader" class="pull-left">
<button class="btn btn-primary btn-def">Choose File</button>
<input id="fileupload" type="file" name="files" data-url="/profile/activate_profile">
</div>
JQuery的
// need to check if there is any image to upload if not
// normal call ajax, if yes go next
$('#fileupload').fileupload({
dataType: 'json',
beforeSend: function(request) {
return request.setRequestHeader("X-CSRF-Token", $("meta[name='_token']").attr('content'));
},
submit: function(e,data)
{
// add form vlues
data.formData = {
'sport' : $('input[name="sport"]:checked').val(),
'city' : $('#city').val(),
'country' : $('#form_location').val(),
'_token' : $('meta[name="_token"]').attr('content')
};
},
add: function (e, data) {
data.context = $('[data-go="finish"]')
.click(function () {
$(this).attr('disabled',true);
data.submit();
});
},
done: function (e, data) {
// do my stuff
}
});