解析使用JS 清空File控件的路徑值
1.關(guān)于如何用腳本修改fileupload控件值的問題,
開發(fā)環(huán)境vs2005,在上傳文件時,需要一個取消的按鈕來清空type=file的value,而且這個頁面上有多個file控件
這個比較麻煩因?yàn)閒ile的值本身是不允許用腳本修改的(安全角度考慮)
方法1).使用腳本把這個file的input移動到一個form中,然后調(diào)用reset,如果有多個這樣的input當(dāng)然還要再移出來.這個方法我不會采用,因?yàn)閷?net開發(fā)者
來講習(xí)慣了一個頁面就一個form所有控件都在其中.
方法2).這個方法有點(diǎn)投機(jī),就是在腳本中調(diào)用
var fileup = document.getElementById(fileid);
fileup.outerHTML = fileup.outerHTML; 這個ie對腳本處理以及展現(xiàn)機(jī)制有關(guān)
方法3).這個主要是在解決ff上的問題時考慮到的,其實(shí)就是重新生成了一個id相同的file,這里要注意 name一定也要賦值,否則是很難提交給服務(wù)器接受的
在平時項(xiàng)目開發(fā)中會有上傳文件的功能,一般在前端會通過JS來判斷上傳文件是否屬于指定的文件類型,如果不屬于就將控件值清空! (當(dāng)然你也可以不清空)
有一種方法可以很簡單的裝文件上傳組件的值清空,代碼如下:
var file=document.getElementById("form1:fileupload");
file.outerHTML=file.outerHTML
以上方法之能在IE中使用
為了兼容FireFox我們使用下面的方式來清空fileupload控件的值:
<span id='uploadSpan'>
<input type="file">
</span>
<script language="JavaScript">
var html=document.getElementById('uploadSpan').innerHTML;
function resetFile(){
document.getElementById('uploadSpan').innerHTML=html;
}
</script>
這樣就行了,各瀏覽器都支持的
相關(guān)文章
JavaScript中的幾個關(guān)鍵概念的理解-原型鏈的構(gòu)建
JavaScript中的prototype,標(biāo)準(zhǔn)翻譯為“原型”,表示對象的初始形態(tài)2011-05-05
如何將一個String和多個String值進(jìn)行比較思路分析
開發(fā)中我們經(jīng)常需要將一個String和多個String值進(jìn)行比較。直覺反應(yīng)是使用||符號連接多個===完成,感興趣的朋友可以了解下哈2013-04-04
JS控制div跳轉(zhuǎn)到指定的位置的幾種解決方案總結(jié)
這篇文章主要介紹了JS控制div跳轉(zhuǎn)到指定的位置的幾種解決方案總結(jié),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。2016-11-11
利用JS響應(yīng)式修改vue實(shí)現(xiàn)頁面的input值
這篇文章主要給大家介紹了關(guān)于如何利用JS響應(yīng)式修改vue實(shí)現(xiàn)頁面的input值,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用JS具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09

