2009-11-26 44 views

Respuesta

31

Pruebe la propiedad value, así:

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

NOTA : Parece que FileUpload1 es un control FileUpload del lado del servidor ASP.Net.
Si es así, usted debe obtener su ID de uso de la propiedad ClientID, así:

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

15 segundos, buen trabajo X-) –

1

Trate

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

Trate document.getElementById("FileUpload1").value este valor debe tener una ruta de un archivo para ser cargado, comercial justo todos los directorios desde ese valor y tendrá el nombre del archivo.

1

RaYell, No es necesario analizar el valor devuelto. document.getElementById("FileUpload1").value devuelve solo el nombre del archivo con extensión. Esto fue útil para mí porque quería copiar el nombre del archivo que se cargará en un cuadro de entrada llamado 'título'. En mi aplicación, el archivo cargado se renombra al índice generado por la base de datos backend y el título se almacena en la base de datos.

23

En google chrome element.value devuelve el nombre + la ruta, pero una ruta falsa. Por lo tanto, para mi caso he usado el atributo de nombre en el archivo, como a continuación:

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

esta es la llamada de la página:

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

Nota para otros: para IE11 esto no me devolvió nada. – Cordell

+0

Funcionó bien para mí en IE11 –

1

El uso de código como este en una forma que pueda capturar el original fuente cargar nombre de archivo, cópielo a un segundo campo de entrada simple. Esto es para que el usuario pueda proporcionar un nombre de archivo de carga alternativo en la solicitud de envío, ya que el nombre de archivo de carga del archivo es inmutable.

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

Si bien este fragmento de código puede resolver la pregunta, [incluyendo una explicación] (http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers) realmente ayuda para mejorar la calidad de tu publicación. Recuerde que usted está respondiendo la pregunta a los lectores en el futuro, y es posible que esas personas no sepan los motivos de su sugerencia de código. – Ferrybig

Cuestiones relacionadas