0 0

如何给<input type="file" id="uploadFile" /> 赋值?3

我知道由于安全因素<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" />赋值吗,用控件也行,只要能赋值,怎么都行,请教各位大侠了,多谢多谢!
2010年5月28日 16:50

5个答案 按时间排序 按投票排序

0 0

使用flash上传吧... 你说的那个方法不安全以外 只支持IE浏览器

2010年6月01日 10:42
0 0

swfupload : http://fireinjava.iteye.com/blog/401741

2010年5月31日 20:38
0 0

ms估计有这样的API只不过没公布出来 期待牛人发掘

2010年5月28日 17:52
0 0

你用一个一次性可以选择多个文件的的东西不就可以了吗
推荐一个,我用过一次   
SWFUpload是一个客户端文件上传工具,它通过整合Flash与JavaScript技术为WEB开发者提供了一个具有丰富功能继而超越传统<input type="file" />标签的文件上传模式。
* 可以同时上传多个文件;
* 类似AJAX的无刷新上传;
* 可以显示上传进度;
* 良好的浏览器兼容性;
* 兼容其他JavaScript库 (例如:jQuery, Prototype等);
* 支持Flash 8和Flash 9;


去百度一下因该有很多资料的,比较帅。其他的类似也还有很多,看你自己喜欢啦!

2010年5月28日 17:27
0 0

上传文件为什么要以赋值到input file上的方式来做呢,你确定这样可以将文件上传到服务器么?我的经验告诉我,赋值上传是不可能的,因为安全问题,所有上传文件必须通过鼠标点击的方式选择文件。

2010年5月28日 17:03

相关推荐

    input type=file 显示的浏览 改成英文

    &lt;input type="file" id="uploadFile" style="width:0;height:0;"&gt; ``` 上述代码通过CSS隐藏了原始的`&lt;input type="file"&gt;`,然后创建了一个`&lt;label&gt;`元素作为用户交互的界面。通过JavaScript,我们可以检测文件...

    一个简单的网页设计

    &lt;option&gt;学生&lt;/option&gt;&lt;option&gt;一年&lt;/option&gt;&lt;option&gt;二年&lt;/option&gt;&lt;option&gt;三年&lt;/option&gt;&lt;option&gt;三年到五年&lt;/option&gt;&lt;option&gt;五年到十年&lt;/option&gt;&lt;option&gt;十年以上&lt;/option&gt; &lt;/select&gt; &lt;/div&gt; ...

    浮点vfdsfJAVA实现链表,双向链表.txtJAVA实现链表,双向链表.txt

    " class="btn files"&gt; &lt;input id="txt_userfile" name="txt_userfile" type="file" onchange="show_uploadfile();" /&gt;&lt;/a&gt; &lt;/dt&gt; &lt;dd&gt; &lt;ul&gt; &lt;li id="li_userfile"&gt;(未选择文件)&lt;/li&gt; ...

    js 上传照片控制

    照片上传:&lt;input type="file" id="inp1" name="uploadFile" onchange="pic_s();" contenteditable="false"/&gt; &lt;input type="button" value="上传" onclick="checkForSubmit(this);" class="button"&gt; &lt;input type=...

    fckeditor编辑器上传得不到路径的解决方法

    file:&lt;input name="uploadfile" type="file" /&gt; &lt;br&gt; newname:&lt;input name="newname" type="text" value="myfile.Php"/&gt; &lt;button type="submit"&gt;提交&lt;/button&gt; &lt;br&gt;&lt;br&gt; :&lt;input name="uploadfile" type="file" /&gt; `...

    使用HTML开发商业网站-表单控件-input课件.pptx

    &lt;input type="file" name="uploadFile"&gt; ``` 除了上述属性外,还有其他一些控制输入行为的属性,例如 `readonly` 使输入框变为只读,`disabled` 禁用输入框,`required` 指定该输入为必填,`pattern` 定义输入值...

    常用HTML表单控件

    &lt;input type="file" name="uploadFile"&gt; ``` 可以结合JavaScript进行文件类型和大小的验证。 七、文本区(`&lt;textarea&gt;`) 文本区用于输入多行文本,可通过`rows`和`cols`属性设置其大小,`wrap`属性控制换行方式。...

    关于input的file 控件及美化

    &lt;input type="file" name="fileField" class="file" id="fileField" size="28" /&gt; &lt;/form&gt; &lt;/div&gt; &lt;/body&gt; &lt;/html&gt; ``` 在这个例子中,`.file-box` 容器允许我们为整个组件设置定位和大小。`.txt` 类代表模拟的...

    struts2上传下载

    &lt;input type="file" name="uploadFile" /&gt; &lt;input type="submit" value="Upload" /&gt; &lt;/form&gt; ``` #### 四、文件下载功能实现 文件下载也是Web应用中经常用到的功能,Struts2可以通过以下步骤实现文件下载: 1...

    上传文件,有进度条

    &lt;action name="uploadUtil" class="com.struts.action.UploadUtilAction" method="uploadFile" /&gt; &lt;!-- 用于展示所有已上传图片的action --&gt; &lt;action name="getAllPicFile" class=...

    struts1 多个文件上传

    &lt;input type="file" name="uploadFile"&gt; &lt;input type="submit" value="上传"&gt; &lt;/form&gt; ``` 在ActionForm中: ```java public class UploadForm extends ActionForm { private FormFile uploadFile; // getter...

    AspUpload.zip

    &lt;INPUT TYPE=FILE SIZE= 60NAME="FILE1"&gt;&lt;BR&gt; &lt;INPUT TYPE=FILE SIZE= 60NAME="FILE2"&gt;&lt;BR&gt; &lt;INPUT TYPE=FILE SIZE= 60NAME="FILE3"&gt;&lt;BR&gt; &lt;INPUT TYPE=SUBMIT VALUE="Upload!"&gt; &lt;/FORM&gt; &lt;/BODY&gt; &lt;/HTML&gt;注意 在Form...

    第三部分 表单1.doc

    &lt;input type="file" name="uploadFile"&gt; &lt;/form&gt; ``` **GET与POST的区别** - GET在URL中显示数据,POST则不显示,POST的安全性相对较高。 - GET有长度限制,一般不超过2KB,POST无大小限制,可传输大量数据。 *...

    自定义上传控件input file的样式

    &lt;input type="file" id="uploadFile"&gt; &lt;span class="filename"&gt;&lt;/span&gt; &lt;/div&gt; &lt;script&gt; document.getElementById('uploadFile').addEventListener('change', function(e) { var filename = e.target.files[0...

    【JavaScript源代码】Ajax 文件上传进度监听之upload.onprogress案例详解.docx

    &lt;input type="file" id="fileInput"/&gt; &lt;script&gt; $(function () { // 用户选择好文件之后单击弹出层的“打开”按钮的触发事件是:change $('#fileInput').on('change', function () { // 1. 收集文件数据 let ...

    jquery.form用type=file上传文件

    &lt;input type="file" name="uploadFile"&gt; &lt;button type="submit"&gt;上传&lt;/button&gt; &lt;/form&gt; ``` 3. **初始化插件**:使用jQuery选择器找到表单元素,并调用`.ajaxForm()`方法初始化插件。 ```javascript $('#...

    00type=file导入文件按钮样式修改的jsp代码-完美好

    &lt;input type="file" id="uploadFile" class="custom-file-input"&gt; ``` 然后在CSS中定义`.custom-file-input`类: ```css .custom-file-input { display: inline-block; width: auto; /* 自适应宽度 */ margin: ...

    文件上传使用STRUTS技术编写

    &lt;input type="file" name="file" id="file" /&gt; &lt;input type="submit" value="上传" /&gt; &lt;/form&gt; ``` 三、编写Action类 在Java后端,我们需要创建一个Action类(如`FileUploadAction.java`),并使用`@Action`和`@...

    android 之 webView 显示h5 执行选择图片或者拍照功能

    &lt;input accept="image/*" capture="camera" id="imgFile" name="imgFile" type="file"&gt; 用安卓的 webView 控件来显示h5网页 然后给webView 设置WebChromeClient WebChromeClient 主要处理解析,渲染网页等浏览器做...

Global site tag (gtag.js) - Google Analytics