js實現(xiàn)動態(tài)添加上傳文件頁面
發(fā)郵件是需要添加一些文件,每添加一個文件,頁面上可以顯示一個表單文件上傳選項。

此功能為:初始時刻只有一個添加按鈕,當點擊添加文件時,會增加一個選擇文件和刪除區(qū)域,同時顯示上傳按鈕,當點擊刪除,此行選擇文件行消失,當所有選擇文件項都消失時,上傳按鈕將被隱藏起來。下面是實例代碼:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>動態(tài)添加文件上傳列表</title>
<script type="text/javascript">
var num=0;
function addFile(event){
//創(chuàng)建一個div標簽,用以包含一個input標簽和刪除按鈕
var innerdiv = document.createElement("div");
//創(chuàng)建一個input標簽
var inputNode = document.createElement("input");
inputNode.name = "fileName";
inputNode.type="file";
//創(chuàng)建一個刪除按鈕
var delNode = document.createElement("input");
delNode.name = "del";
delNode.type = "button";
delNode.value="刪除";
var submit = document.getElementById("submit");
//刪除當前刪除按鈕所在的標簽,為此按鈕點擊事件創(chuàng)建一個處理函數(shù)
delNode.onclick = function d(){
this.parentNode.parentNode.removeChild(this.parentNode); //刪除此div區(qū)域
var fileNodes = document.getElementsByName("fileName");
//當沒有上傳文件時,隱藏submit按鈕
if(fileNodes.length==0){
submit.style.display="none";
}
};
innerdiv.appendChild(inputNode);
innerdiv.appendChild(delNode);
var div = document.getElementById("file");
div.appendChild(innerdiv);
submit.style.display="block";
}
</script>
</head>
<body>
<form id="upload" action="${pageContext.request.contextPath }/servlet/FileUploadServlet" enctype="multipart/form-data" method="post">
上傳文件:<input type="button" value="添加文件" onclick="addFile(this.parentNode)"/> <br />
<table>
<div id="file">
</div>
</table>
<input id="submit" type="submit" value="上傳" style="display: none"/>
</form>
</body>
</html>
此實例代碼中,addFile將動態(tài)增加一個div區(qū)域,div區(qū)域包含一個file input標簽和刪除按鈕。
動態(tài)創(chuàng)建一個input標簽示例:
//創(chuàng)建一個div標簽,用以包含一個input標簽和刪除按鈕
var innerdiv = document.createElement("div");
//創(chuàng)建一個input標簽
var inputNode = document.createElement("input");
inputNode.name = "fileName";
inputNode.type="file";
innerdiv.appendChild(inputNode);
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
ie8 不支持new Date(2012-11-10)問題的解決方法
使用JS的時候也碰到了如下問題,后來經(jīng)過修改,在IE8環(huán)境里,下面的代碼是可用的,下面與大家分享下ie8 不支持new Date的解決方法,有類似問題的朋友可以參考下2013-07-07
JavaScript仿靜態(tài)分頁實現(xiàn)方法
這篇文章主要介紹了JavaScript仿靜態(tài)分頁實現(xiàn)方法,可實現(xiàn)模擬靜態(tài)效果的分頁功能,并且可以控制分頁的字符數(shù),使用時可根據(jù)情況進行相應(yīng)的字段修改即可,非常靈活實用,需要的朋友可以參考下2015-08-08
BootStrap點擊保存后實現(xiàn)模態(tài)框自動關(guān)閉的思路(模態(tài)框)
這篇文章主要介紹了BootStrap點擊保存后實現(xiàn)模態(tài)框自動關(guān)閉的思路(模態(tài)框),需要的朋友可以參考下2017-09-09

