input.value = ""; вполне кроссбраузерный вариант
удивляет то, что в ie11 до сих пор нет fakepath
http://www.w3.org/TR/2011/WD-html5-2...value-filename
http://www.w3.org/TR/2011/WD-html5-2...e-upload-state
<!DOCTYPE html>
<meta charset="utf-8"/>
<script>
function extractFilename(path) {
var x;
x = path.lastIndexOf('\\');
if (x >= 0) // Windows-based path
return path.substr(x+1);
x = path.lastIndexOf('/');
if (x >= 0) // Unix-based path
return path.substr(x+1);
return path; // just the filename
}
</script>
This can be used as follows:
<p><input type=file name=image onchange="updateFilename(this.value)"></p>
<p>The name of the file you picked is: <span id="filename">(none)</span></p>
<script>
function updateFilename(path) {
var name = extractFilename(path);
document.getElementById('filename').textContent = name;
alert(path);
}
</script>
PS: хотя вру, здесь на сайте (а не локально) в ie всё-таки вывело fakepath (на локальном сервере тоже он), ну слава богу