Я использую Krajee плагин Bootstrap File Input для загрузки через AJAX-вызов.
Вот ссылка на плагин Krajee AJAX: плагин Krajee AJAX
Я использую следующие коды JS и PHP (codeigniter):
JS:
<script>
$("#file-upload").fileinput({
'allowedFileExtensions' : ['csv'],
'maxFileSize': 5120,
'maxFileCount': 1,
'uploadUrl': 'dashboard/uploader',
'elErrorContainer': '#errorBlock',
'uploadAsync': true,
'msgInvalidFileExtension': 'Invalid extension for file "{name}". Only "{extensions}" files are supported.',
'uploadExtraData': {csrf_token_name: $("input[name=csrf_token_name]").val()}
});
</script>
PHP:
public function uploader(){
$config['upload_path'] = './csv_uploads/';
$config['allowed_types'] = 'csv';
$config['max_size'] = '5120';
$this->upload->initialize($config);
if (!$this->upload->do_upload("file-upload")){
$data['error'] = 'The following error occured : '.$this->upload->display_errors().'Click on "Remove" and try again!';
echo json_encode($data);
} else {
echo json_encode("success");
}
}
Прямо сейчас я получаю ответ от PHP, что бы это ни было - ошибка или успех, как в JSON, я просмотрел документацию по плагину и до сих пор не могу найти, как перехватить ответ AJAX и действовать в соответствии с этим ответом, как мы делаем в jQuery. с функцией успеха ajax:
success: function (response) {
//Deal with the server side "response" data.
},
Как я могу это сделать?