这是我在控制器中的函数。我没有使用 ajax 函数上传数据,而是提交表单,我是 PHP 语言的新手。我想显示一个加载 gif,直到上传完成。我尝试搜索,但没有找到这个框架的答案。
try {
$config['upload_path'] = './uploads/';
$config['allowed_types'] = '*';
$this->load->helper('file');
$this->load->library('upload', $config);
if (!$this->upload->do_upload()) {
$this->session->set_flashdata('import_attendance', '<br><span style="font-size: 13px;background-color: #FFFFFF;color:#ff0000;border:solid 1px #ff99cc;padding:2px;border-radius: 5px 5px 5px 5px">No file is Selected</span>');
redirect('import/drawIndexAttendanceImport');
} else {
$upfile = array('upload_data' => $this->upload->data());
$this->load->library('/lib/PHPExcel.php');
$inputFileName = $upfile['upload_data']['full_path'];
$this->load->model('import/import_model');
$result = $this->import_model->importAttendance($inputFileName);
if ($result == true) {
$this->session->set_flashdata('import_attendance', '<br><span style="font-size: 13px;background-color: #FFFFFF;color:#00cc00;border:solid 1px #00cc00;padding:2px;border-radius: 5px 5px 5px 5px">Succussfully Uploaded </span>');
redirect('import/drawIndexAttendanceImport');
} else {
$this->session->set_flashdata('import_attendance', '<br><span style="font-size: 13px;background-color: #FFFFFF;color:#ff0000;border:solid 1px #ff99cc;padding:2px;border-radius: 5px 5px 5px 5px">Upload Error</span>');
redirect('import/drawIndexAttendanceImport');
}
}
$this->template->draw('import/drawAttendanceImport', $data);
} catch (Exception $exc) {
}
}
建议:
步骤 :: 单击上传按钮显示图像加载图像并运行 函数 saveUpload() 此函数会将您的上传保存在文件夹中 并在 db 中,并将返回真/假。如果成功,则为真,否则为假。如果 真 执行页面刷新。
<div id="loadergif">Please place your gif here...</div>
上传开始时执行此操作: $("#loadergif").css('display','block');
//显示
在 img 上传成功时执行此操作: $("#loadergif").css('display','none');
//隐藏
注意:最初不要忘记隐藏加载程序。Helpfull link:https://stackoverflow.com/a/27274616/4229270