P: Como borrar un input file
R: Por seguridad los campos file no son editables, pero se puede reemplazar por uno nuevo con el DOM
ver ejemplo:
Código:
<html>
<head>
<title>
prueba
</title>
<script type="text/javascript">
function valida(f) {
if (f.value.substr(f.value.length - 3).toUpperCase() == "JPG")
alert("Ok")
else {
alert("No");
siguiente = f.nextSibling;
fff = document.createElement("input");
fff.type = "file";
fff.name = f.name;
fff.onchange = f.onchange;
fff.value = "";
f.form.insertBefore(fff, siguiente);
f.form.removeChild(f);
}
}
</script>
</head>
<body >
<form action="" method="get" name="f">
<input type="file" name="jpg[0]" onChange="valida(this)"/>
<input type="file" name="jpg[1]" onChange="valida(this)"/>
<input type="file" name="jpg[2]" onChange="valida(this)"/>
<input type="file" name="jpg[3]" onChange="valida(this)"/>
</form>
</body>
</html>
Se ha tratado el tema en estos enlaces:
¿cómo pongo un campo file vacio desde javascript? y
Vaciar un campo de formulario