蓝印文件上传额外参数

BlueImp File upload extra parameter

本文关键字:参数 文件      更新时间:2023-09-26

我正在尝试将一个额外的参数传递给 blueimp 文件上传。我尝试使用文件上传提交事件:

$('#fileupload').bind('fileuploadsubmit', function (e, data) {
// The example input, doesn't have to be part of the upload form:
var input = $('#input');
data.formData = {example: input.val()};
if (!data.formData.example) {
  data.context.find('button').prop('disabled', false);
  input.focus();
  return false;
}
});
但是我不知道该

额外参数被传递到哪里以及如何访问该额外参数?

我试图实现的是,在UI版本中上传文件时,为每一行分配一个唯一的ID。有什么建议吗?

在您的上传模板 javascript 中添加字段

<td>
Descripción
	<input type="text" name="descripcion[]" id="descripcion" placeholder="Descripción">     
</td>
在你的jQueryFileUpload中

}).on('fileuploadsubmit', function (e, data) {
  var inputs = data.context.find(':input');
  if (inputs.filter(function () {
    return !this.value && $(this).prop('required');
  }).first().focus().length) {
  	data.context.find('button').prop('disabled', false);
  return false;
  }
  data.formData = data.context.find(':input').serializeArray();
});

首先,模板下载添加此代码

<td>
  {%=file.descripcion%}
</td>

然后修改您的自定义索引.php"set_additional_file_properties ($ 文件)"功能

protected function set_additional_file_properties($file) {
        parent::set_additional_file_properties($file);
        if ($_SERVER['REQUEST_METHOD'] === 'GET') {
            $sql = "SELECT Id, Nombre, Descripcion FROM tabla WHERE Nombre='".$file->name."'";
            $query = $this->db->prepare($sql);
            $query->execute();
            $query->bind_result(
                $id,
                $nombre,
                $descripcion
            );
            while ($query->fetch()) {
                $file->id = $id;
                $file->nombre = $nombre;
                $file->descripcion = utf8_encode($descripcion);
            }
        }
		
    }