如何改变FileUpLoad控件内容??

 我来答
秋雨飒330
2013-08-25 · TA获得超过117个赞
知道答主
回答量:117
采纳率:0%
帮助的人:139万
展开全部
对于fileupload,它的file值是只读的,我们没有办法去改变它,不过一些变相的方法还是可以的。方法一: 上传控件基础知识说明: 上传控件(<input type="file"/)用于在客户端浏览并上传文件,用户选取的路径可以由value属性获取,但value属性是只读的,不能通过javascript来赋值,这就使得不能通过value=""语句来清空它。很容易理解为什么只读,如果可以随意赋值的话,那么用户只要打开你的网页,你就可以随心所欲的上传他电脑上的文件了,呵呵,毕竟表单的submi是可以随便调用的。 仔细想想,上传控件是不是任何时候都不可能被清空呢?答案是否,form.reset()方法能够重置所有得表单元素。只要调用inputFile.form.reset(),那么上传控件的值就清空了,不要担心它被恢复为某个默认值,value是只读的,你不能为它设置某个初始值。 然而这个方法还是不够优雅,沿着思路继续想下去,不难得到改进的方法:创建一个新的form,把上传控件临时放过来,再调用这个form的reset方法,完工之后再把上传控件弄回去。这个form无需进入DOM结构便能正常工作,所以不用担心会对界面有任影响。下面给出函数实现,经过验证工作良好,呵呵。程序代码 //清空文件上传框 function clearFileInput(file){varform=document.createElement('form'); document.body.appendChild(form); //记住file在旧表单中的的位置varpos=file.nextSibling; form.appendChild(file); form.reset(); pos.parentNode.insertBefore(file,pos); document.body.removeChild(form);} 方法2 用这个方法不能保存input的样式 比较简单了 重新建立个 file 就可以了。程序代码<spanid=span1<inputname=abtype=file</span<input name=button1 type=buttonvalue="按" onclick=show()<script language=javascriptfunctionshow(){ document.getElementByIdx("span1").innerHTML="<inputname=ab type=file";} </script 方法3,用这个方法可以保存input的样式<input name=button1 type=buttonvalue="按" onclick=show()<script language=javascriptfunctionshow(){ var e=document.getElementByIdx("span1");
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式