hola, este es un post antiguo pero justo me encontre con este problema y la solucion que le di es esta:
el campo inserto dentro de un simple div:
Código:
<DIV id=capaarchivo ><input name="archivo" type="file" id="archivo"></DIV>
y lo borro con esta funcion javascript que invoco de donde sea necesario (en mi caso desde varios botones):
Código:
function fncBorracampofile()
{
capa = window.capaarchivo;
varHTML = '';
capa.innerHTML = varHTML;
varHTML += '<input name="archivo" type="file" id="archivo">';
capa.innerHTML = varHTML;
}
como ven lo que hago es eliminar y crear el campo nuevamente dentro del div con ayuda de javascript.