Estoy creando un control de carga en javascript y luego usando element.click()
para abrir el cuadro de diálogo del buscador de archivos.Javascript y la carga de archivos no funciona como se esperaba con click()
function add(type) {
var element = document.createElement("input");
element.setAttribute("type", type);
element.setAttribute("value", type);
element.setAttribute("name", type);
element.setAttribute("id", "element-" + i);
var removebutton = document.createElement('a');
var removeimage = document.createElement('img');
removeimage.setAttribute("width", 15);
removeimage.setAttribute("height", 15);
removeimage.setAttribute("class", "removebutton");
removeimage.src = "/Content/Images/redx.png";
removebutton.appendChild(removeimage);
removebutton.setAttribute("id", "remove-" + i);
removebutton.setAttribute("onclick", "remove(" + i + "); return 0;");
var newfile = document.getElementById("uploadhere");
//newfile.appendChild(removebutton);
newfile.appendChild(element);
newfile.appendChild(removebutton);
element.click();
i++;
}
El archivo aparece como estaba previsto, pero después selecciono la presente en mi formulario de los archivos introducidos en el control de desaparecer.
Si hago clic en "navegar" obtengo el cuadro de diálogo de archivo pero el archivo se carga correctamente.
¿Cómo puedo agregar un control de carga de archivos a mi formulario y hacer que muestre el cuadro de diálogo de abrir archivos y seguir funcionando como estaba previsto.
favor agregue un ejemplo en http://jsfiddle.net – MCSI
¿Dónde está la variable "i" definido? Aquí hay un [jsFiddle] aproximado (http://jsfiddle.net/u8dcV/) con la "i" definida. El otro problema que veo es que tampoco nos has mostrado la función remove(). – j08691
Siempre entendí que no se podía crear una secuencia de comandos para el elemento de carga, ya que si puedes hacer eso, puedes hacer muchos trucos que infringen la privacidad. Pero tal vez eso ha cambiado en los años desde que lo investigué? –