Подтвердить что ты не робот

Получить имя файла для загрузки файла в документ через JavaScript

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

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

4b9b3361

Ответ 1

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

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

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

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

Ответ 2

В 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);"/>

Ответ 3

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

Ответ 4

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

Ответ 5

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

fake_path=document.getElementById('FileUpload1').value
alert(fake_path.split("\\").pop())

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

Ответ 6

Try

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

Ответ 7

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

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