使用DOM动态创建js实现多附件上传客户端

简介:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>使用DOM方法实现多附件上传客户端</title>
<script language="javascript" type="text/javascript">

function addFile(){
//创建tr标签
var tr1=document.createElement("tr");
//创建td标签
var td1=document.createElement("td");
//创建input标签
var input1=document.createElement("input");
//给input加上type=file属性
input1.setAttribute("type","file");
//给input加上value=“浏览”属性
input1.setAttribute("value","浏览");
//将创建的第一个td追加到tr1
td1.appendChild(input1);
tr1.appendChild(td1);
//再次创建一个td
var td1=document.createElement("td");
//创建input标签
var input1=document.createElement("input");
//给input加上type=“button” 和value=“删除”属性
input1.setAttribute("type","button");
input1.setAttribute("value","删除");
//给input添加上nclick事件,将this传过去,也就是标签对象input,到时候执行那个input就将那个input对象传过去
input1.setAttribute("onclick","delFile(this)");
//将input追加给td
td1.appendChild(input1);
//再讲td追加给tr1
tr1.appendChild(td1);
//最后将tr1追加给table
document.getElementById("id2").appendChild(tr1);

}
  
  
  
function delFile(this1){
    //this1接受onclik事件传过来的值,也就是被执行的那个input对象
    //我们要删除的是tr标签,所以经过input标签找到input的父标记td
    //再经过td找到td的父标记tr,在找到tr的父标记table,根据关系就是input的大爷table~
    var p=this1.parentNode;
     var p2=p.parentNode;
     var p3=p2.parentNode;
    //删除执行删除标签所属的tr标签,保存删除标签的结果
    var element=p3.removeChild(p2);
    }
</script>
</head>
<body>
<div id="id1">
<table id="id2">
<tr>
<td><input type="file" value="浏览"></td>
<td><input type="button" value="添加" onclick="addFile()"></td>
</tr>
</table>
</div>
</body>
</html>


 

目录
相关文章
|
29天前
|
JavaScript 前端开发
JavaScript操作DOM元素
JavaScript操作DOM元素
11 1
|
1月前
|
JavaScript 前端开发
如何使用 JavaScript 操作 DOM?
如何使用 JavaScript 操作 DOM?
13 0
|
11天前
|
JavaScript 算法
原生JS完成“一对一、一对多”矩形DIV碰撞检测、碰撞检查,通过计算接触面积(重叠覆盖面积)大小来判断接触对象DOM
原生JS完成“一对一、一对多”矩形DIV碰撞检测、碰撞检查,通过计算接触面积(重叠覆盖面积)大小来判断接触对象DOM
|
27天前
|
JavaScript 前端开发 算法
js开发:请解释什么是虚拟DOM(virtual DOM),以及它在React中的应用。
虚拟DOM是React等前端框架的关键技术,它以轻量级JavaScript对象树形式抽象表示实际DOM。当状态改变,React不直接操作DOM,而是先构建新虚拟DOM树。通过高效diff算法比较新旧树,找到最小变更集,仅更新必要部分,提高DOM操作效率,降低性能损耗。虚拟DOM的抽象特性还支持跨平台应用,如React Native。总之,虚拟DOM优化了状态变化时的DOM更新,提升性能和用户体验。
21 0
|
2月前
|
JavaScript
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
27 0
|
4天前
|
存储 JavaScript 前端开发
JavaScript DOM 操作:解释一下 cookie、sessionStorage 和 localStorage 的区别。
Cookie是服务器发送至客户端的文本信息,会随每个请求发送回服务器,适合控制会话状态但可能暴露隐私。SessionStorage仅在当前会话中存储数据,关闭浏览器后清除,适合临时存储如登录状态。LocalStorage则持久保存数据,即使关闭浏览器也不会清除,适用于存储长期设置。三种方式各有侧重,应按需求选择。
10 0
|
4天前
|
JavaScript 前端开发 安全
JavaScript DOM 操作:解释一下浏览器的同源策略。
**同源策略**是浏览器安全基石,它阻止脚本跨不同协议、域名或端口访问资源,防止恶意行为。例如,HTTP页面无法直接用JS获取HTTPS页面内容。**CORS**允许跨域请求,但需服务器配合设置,通过`document.domain`属性可配置,但仍受限于服务器配置。
10 4
|
16天前
|
JavaScript
理解DOM树的加载过程(js的问题)
理解DOM树的加载过程(js的问题)
|
18天前
|
JavaScript 前端开发
深入了解 JavaScript 中的 DOM 和 BOM
深入了解 JavaScript 中的 DOM 和 BOM
17 4
|
24天前
|
JavaScript 前端开发 算法
深入探讨前端框架Vue.js中的虚拟DOM机制
本文将深入探讨前端框架Vue.js中的虚拟DOM机制,分析其原理、优势以及在实际开发中的应用场景,帮助读者更好地理解Vue.js框架的核心特性。