js 获取、清空input type="file"的值示例代码

上传控件基础知识说明:

上传控件(<input type="file"/>)用于在客户端浏览并上传文件,用户选取的路径可以由value属性获取,但value属性是只读的,不能通过javascript来赋值,这就使得不能通过value=""语句来清空它。很容易理解为什么只读,如果可以随意赋值的话,那么用户只要打开你的网页,你就可以随心所欲的上传他电脑上的文件了。

js 获取<intput type=file />的值

复制代码 代码如下:

<html>
 <script language='javascript'>  
  function   show(){  
  var   p=document.getElementById("file1").value; 
  document.getElementById("s").innerHTML="<input id=pic type=image height=96 width=128 /> ";  
  document.getElementById("pic").src=p;
  alert(p);   
  }  
  </script>

 <head>
  <title>MyHtml.html</title>

 </head>

 <body>
  <input type="file" name="file1" id="file1" onpropertychange="show();" />
  <span id="s"></span>
 </body>
</html>


清空上传控件(<input type="file"/>)的值的两种方法

方法1:
复制代码 代码如下:

<span   id=span1>  
  <input   name=ab   type=file>  
  </span>  
  <input   name=button1   type=button   value="按"   onclick=show()> 

  <script   language=javascript>  
  function   show()  
  {  
  document.getElementById("span1").innerHTML="<input   name=ab   type=file>";  
  }  
  </script> 


方法2:
复制代码 代码如下:

function clearFileInput(file){
    var form=document.createElement('form');
    document.body.appendChild(form);
    //记住file在旧表单中的的位置
    var pos=file.nextSibling;
    form.appendChild(file);
    form.reset();
    pos.parentNode.insertBefore(file,pos);
    document.body.removeChild(form);
}

相关文章

问题背景 最近小伙伴提了一个希望提高后台下拉列表可操作性的...
// n位随机数生成 function randomNum(n) { let sString = &...
HTML是HyperText Markup Language的简称,中文名称:超文本标...
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现...
JavaScript 是脚本语言,是一种解释性脚本语言(代码不进行预...
本文由葡萄城技术团队原创并首发 转载请注明出处:葡萄城官网...