Código:
//...
ja="<input name=\"archivo\" type=\"file\" id=\"archivo\" size=\"32\" />";
//...
realmente esta forma de codigo solamente trabaja en MSIE y no es la forma correcta segun el estandar DOM.
createElement solo necesita el nombre del elemento, es decir, sin los atributos. creo entender tu caso donde necesitas crear un input tipo file frente a la situacion de MSIE donde no permite cambiar el tipo de un input. lo cierto es que si puedes hacerlo con un elemento antes de agregarlo al documento.
Código javascript
:
Ver originalja = document.createElement('input');
ja.setAttribute('type', 'file');
ja.setAttribute('size', '20');
ja.setAttribute('name', 'archivo');
a.appendChld(ja);
al menos me funciona en MSIE7. si no te funciona con
setAttribute intentalo con las propiedades del elemento:
ja.type = 'file'; ja.name = 'archivo'; ...