我有这个代码。在这里,我使用fileupload
jquery api。
我的HTML代码
<span class="btn btn-danger select-button fileinput-button">
<span>SELECT FILE</span>
<input id="fileupload" type="file" name="file_image" />
<input type="hidden" name="file_name" id="file_name" />
<input type="hidden" name="file_type" id="file_type" />
</span>
<button type="button" id="btn-submit" class="btn btn-danger select-button" onclick="enc_validation();" disabled="disabled">SUBMIT</button>
脚本
$(function () {
'use strict';
var url = '<?php echo site_url('home/upload_file')?>';
$('#fileupload').fileupload({
url: url,
dataType: 'json',
acceptFileTypes: /(\.|\/)(<?php echo $accept_file_types; ?>)$/i,
done: function (e, data) {
$.each(data.result.files, function (index, file) {
if (file.url) {
$('#files').css('color','black').html(file.name);
$('#btn-submit').attr('disabled',false);
$('#new-files').val(file);
$('#file_name').val(file.name);
$('#file_type').val(file.type);
$('#delete-area').html(file.deleteUrl);
} else if (file.error) {
$('#files').css('color','rgb(179,1,0)').html(file.error);
}
});
},
progressall: function (e, data) {
var progress = parseInt(data.loaded / data.total * 100, 10);
$('#progress .progress-bar').css('width', progress + '%');
},
fail: function (e, data){console.log(data);
$.each(data.result.files, function (index, file) {
$('#files').css('color','green').html('Error');
});
},
}).prop('disabled', !$.support.fileInput).parent().addClass($.support.fileInput ? undefined : 'disabled');
});
function enc_validation() {
alert($('#new-files').val());
}
正如您在代码中看到的那样,在从upload元素中选择文件时,我附加了fileupload
api的方法。但是,在此之后,当用户点击提交按钮时,我甚至无法提醒上传的文件。它只是警告&#34; undefined&#34;。我不知道什么是错的。在enc_validation()
方法中,我正在做的就是提醒上传的文件,甚至是“给我”错误。可能有fileupload
api的一些工作,我不知道。
我可能忽略了一些东西,但我被困在这里。我需要帮助的人。并提前感谢。
我知道,HTML中没有#new-files
,警告#fileupload
也不起作用。我想要的只是通过#fileupload
元素上传的文件的信息。我怎么能得到它?