получить имя файла fileupload в документе с помощью javascript
-
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 последнего элемента в вашем файле.