получить имя файла fileupload в документе с помощью javascript

StackOverflow https://stackoverflow.com/questions/1804745

  •  05-07-2019
  •  | 
  •  

Вопрос

var fu1 = document.getElementById("FileUpload1");

как я могу получить имя файла элемента управления fileupload с помощью id FileUpload1

Это было полезно?

Решение

Попробуйте свойство value , например:

var fu1 = document.getElementById("FileUpload1");
alert("You selected " + fu1.value);

ПРИМЕЧАНИЕ . Похоже, FileUpload1 является серверным элементом управления FileUpload на стороне ASP.Net.
Если это так, вы должны получить его идентификатор с помощью < свойство code> ClientID , например:

var fu1 = document.getElementById("<%= FileUpload1.ClientID %>");

Другие советы

В Google Chrome element.value вернуть имя + путь, но поддельный путь. Таким образом, для моего случая я использовал атрибут name в файле, как показано ниже:

function getFileData(myFile){
   var file = myFile.files[0];  
   var filename = file.name;
}

это звонок со страницы:

<input id="ph1" name="photo" type="file" class="jq_req" onchange="getFileData(this);"/>

Попробуйте document.getElementById (" FileUpload1 "). value в этом значении должен быть путь к файлу для загрузки, просто удалите все dir из этого значения, и у вас будет имя файла.

RaYell, Вам не нужно анализировать возвращаемое значение. document.getElementById("FileUpload1").value возвращает только имя файла с расширением.Это было полезно для меня, потому что я хотел скопировать имя файла для загрузки в поле ввода под названием "title".В моем приложении загруженный файл переименовывается в индекс, сгенерированный серверной базой данных, а заголовок сохраняется в базе данных.

Попробуй

var fu1 = document.getElementById("FileUpload1").value;

Используя подобный код в форме, я могу захватить исходное имя файла загрузки исходного кода, скопировать его во второе простое поле ввода. Это означает, что пользователь может указать альтернативное имя файла для загрузки в запросе на отправку, поскольку имя файла для загрузки файла является неизменным.

    <input type="file" id="imgup1" name="imagefile">
      onchange="document.getElementsByName('imgfn1')[0].value = document.getElementById('imgup1').value;">
    <input type="text" name="imgfn1" value="">

Чтобы получить только загруженный файл, используйте это имя,

fake_path=document.getElementById('FileUpload1').value
alert(fake_path.split("\\").pop())
Значение

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top