日期:2014-05-20  浏览次数:21396 次

input type=file 怎么赋初始值。客户的需求
http://www.iteye.com/problems/43278
这里面有个例子,说可以,但我怎么尝试都不可以。网上的所有程序都是这样子的。
JScript code
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");


这段代码的意思是,使用WshShell,把剪贴板的数据黏贴到INPUT TYPE=FILE里面。我试了,没有效果。FILE控件ctrl+v是没有效果的呀,怎么程序这么写呢?是不是要设置FILE可编辑,还是要设置其他东西?

------解决方案--------------------
探讨
可以用一个文本框模拟一个。其实就是一个假的。
file文本框如果初始值,那这个值一定来源于服务器。把这个值显示在文本框里面,这个文本框和file重叠并且没有边框,这样用户用眼睛看是看不出区别来的。
然后当file的值改变之后,把这个值赋值给文本框。

剩下的在后台处理就可以了。