как изменить тип ввода = имя файла в JavaScript - PullRequest
0 голосов
/ 04 марта 2019

У меня проблема с изменением имени файла.

Основная проблема, с которой я сталкиваюсь, - это когда пользователь делает снимок с iPhone.iOS называет все только что захваченные фотографии image.jpg.Я пытаюсь дать пользователю возможность изменить имя файла или сделать что-то программно, например, «image (1) .jpg».

Я ищу советы по переименованию файлов в JS или другие идеио том, как сделать так, чтобы пользователи не загружали файл с таким же именем.

function processSelectedFiles(fileInput) {
  var files = fileInput.files;
  var div = document.getElementById("fileList");

  for (var i = 0; i < files.length; i++) {
    var newFileName = prompt("Filename " + files[i].name,files[i].name);
    
    if (newFileName!== null){
      files[i].name=newFileName;
    }
    
    div.innerText += files[i].name;
  }
}
<!-- Learn about this code on MDN: https://developer.mozilla.org/en-US/docs/Web/API/File/name -->

<input type="file" multiple onchange="processSelectedFiles(this)">
</br>
File Name:
</br>
<div id="fileList"></div>

1 Ответ

0 голосов
/ 04 марта 2019

По соображениям безопасности javascript в браузере не имеет доступа к файловой системе.Поэтому, если вы пытаетесь получить полный путь от внешнего интерфейса, это невозможно, проверьте здесь

https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_fileupload_value

Вы можете создать API и подключить его к внешнему интерфейсу для изменения имени файла.операции и т. д.

Существует несколько альтернативных подходов, предоставляемых Firefox (mozFullPath), но на данный момент он не получил широкого распространения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...