我知道由于安全因素<input type="file" id="uploadFile" /> 是只读的,但我要动态上传多个文件,我必须要给这个组件赋值。以下这种方式我已经试过,是可以的
         var path = "c:\\123.text";
         var uploadFile = document.getElementById("uploadFile");
         var WshShell=new ActiveXObject("WScript.Shell");
         //将路径放入剪切板
window.clipboardData.setData('text', path); 
         uploadFile.focus();
//Ctrl + A 操作
     WshShell.sendKeys("^a");
     //Ctrl + V 操作(sendKeys对于中文赋值操作显得无力,所以只能模拟键盘操作)
     WshShell.sendKeys("^v");但我有多个已知的本地文件路径,需要循环通过上述方法逐个上传,在循环的过程中,如果我把鼠标点击到其他的可以输入的组件中,例如一个word文档,或eclipse的控制台中,就会在那里出现被ctrl+v 的路径,从而影响了以上方式的赋值。也就是说,只要使用上述方式循环上传本地文件,就不能做其他的涉及到鼠标焦点的事了,这样用户是肯定不能接受的,试想一下,用户上传100个文件,而且都不小,在上传的过程中,用户想去写个文档,或ctrl+c操作都会影响到文件上传。难道就没有其他的方式实现给<input type="file" id="uploadFile" />赋值吗,用控件也行,只要能赋值,怎么都行,请教各位大侠了,多谢多谢!