Может кто-нибудь сказать мне, почему я всегда получаю следующую ошибку?
Uncaught TypeError: Не удалось создать «FormData»: параметр 1 не имеет типа «HTMLFormElement».
Мой HTML:
<form role="form" id="uploadSortimentReport" enctype="multipart/form-data">
<div class="card-body">
<div class="form-group">
<label>XML file</label>
<div class="input-group">
<div class="custom-file">
<input type="file" class="custom-file-input" name="report">
<label class="custom-file-label">choose file</label>
</div>
</div>
</div>
<div class="form-group">
<label>Country</label>
<select name="country" class="form-control">
<option value="">choose</option>
<option value="sk">Slovak</option>
<option value="cz">Czech</option>
</select>
</div>
</div>
<div class="card-footer">
<button type="submit" name="uploadReport" class="btn btn-info" id="uploadButton">Upload</button>
</div>
</form>
Мой JS (я знаю, что ajax не завершен, но я думаю, что не следует выдавать ошибку)
$.validator.setDefaults({
submitHandler: function () {
$('#uploadButton').prop('disabled', true).html('<i class="fa fa-spinner fa-spin"></i> Processing');
var fd = new FormData($('#uploadSortimentReport'));
}
});
$('#uploadSortimentReport').validate({
rules: {
report: {
required: true,
extension: "xml"
},
country: {
required: true
}
},
messages: {
report: {
required: "Please choose file.",
extension: "Only XML file is accepted."
},
country: {
required: "Please choose country."
}
},
errorElement: 'span',
errorPlacement: function (error, element) {
error.addClass('invalid-feedback');
element.closest('.form-group').append(error);
},
highlight: function (element, errorClass, validClass) {
$(element).addClass('is-invalid');
},
unhighlight: function (element, errorClass, validClass) {
$(element).removeClass('is-invalid');
}
});
Я пытался сделать все. Ничего не помогло.
Спасибо.