MSDN tiene un ejemplo here del objeto File que permite múltiples archivos para ser seleccionadosúnico archivo seleccionar sólo con objeto File
<!DOCTYPE html>
<html>
<head>
<title>Acquiring File Information</title>
<style type="text/css">
#alert {
color: red;
margin: 1em 0;
}
</style>
<script type="text/javascript">
window.addEventListener('load', init, false);
function init() {
checkForFileApiSupport();
document.getElementById('files').addEventListener('change', handleFileSelection, false);
}
function checkForFileApiSupport() {
if (window.File && window.FileReader && window.FileList && window.Blob) {
// All the File APIs are supported.
}
else {
document.getElementById('alert').innerHTML = "The File APIs are not fully supported in this browser.";
}
}
function handleFileSelection(evt) {
var files = evt.target.files; // The files selected by the user (as a FileList object).
// "files" is a FileList of file objects. List some file object properties.
var output = [];
for (var i = 0, f; f = files[i]; i++) {
output.push('<li><strong>', f.name, '</strong> (', f.type || 'n/a', ') - ',
f.size, ' bytes, last modified: ',
f.lastModifiedDate, '</li>');
}
document.getElementById('list').innerHTML = '<ul>' + output.join('') + '</ul>';
}
</script>
</head>
<body>
<input type="file" id="files" name="files[]" multiple /> <!-- The name attribute value is typically paired with the field's data when submitted via a <form> tag. -->
<output id="list"></output>
<div id="alert"></div>
</body>
</html>
¿Es posible restringir la selección a un solo archivo en el diálogo abierto en lugar de utilizar f = files[0]
que puede no ser siempre confiable?
Uso de la fila india Select es ahora no devuelve 'f.size',' f.type' o 'f.lastModifiedDate'. ¿Cómo devuelvo esto de forma similar a la selección de múltiples archivos? – user3357963
Puede obtenerlos de la misma manera, accediendo al objeto File en 'evt.target.files [0]'. Puedes verlo trabajando en este [violín] (http://jsfiddle.net/jbalsas/5XvFt/) – jbalsas
¡Excelente gracias! No había cambiado 'document.getElementById ('files') ..' to 'document.getElementById ('file') ...' – user3357963