需求:

组织部中有个这样的需求,根据年份动态显示该年份下的定性指标!

我的做法:

先是放一个空的div,让后根据指标的数据,动态的往div中添加元素。

代码:

空的div,存放定性指标

  1. <div id="DvelopmentTarget">     </div>
<div id="DvelopmentTarget">     </div>

动态往div中添加元素:

  1. for (var n = 0; n < data.length; n++)
  2. {
  3. //获取div
  4. var div = document.getElementById("DvelopmentTarget");
  5. //换行
  6. var br = document.createElement("br");
  7. div.appendChild(br);
  8. //添加label ,存放指标名称
  9. var div2 = document.createElement("label");
  10. div2.innerText = data[n].QualitativeTargetName;
  11. div.appendChild(div2);
  12. //添加text ,存放指标权重
  13. var input = document.createElement("input");
  14. input.setAttribute('type', 'text');
  15. input.setAttribute('ReadOnly', 'True');  //设置文本为只读类型
  16. input.value = data[n].DevelopmentAllWeight
  17. div.appendChild(input);
  18. //添加select 存放指标id
  19. var targetID = document.createElement("select");
  20. targetID.innerText = data[n].QualitativeTargetID;
  21. targetID.setAttribute('hidden', 'hidden');
  22. div.appendChild(targetID);
  23. //添加 %(单位百分比)
  24. //换行
  25. var br = document.createElement("br");
  26. div.appendChild(br);
  27. }
for (var n = 0; n < data.length; n++)
{
//获取div
var div = document.getElementById("DvelopmentTarget");
        //换行
var br = document.createElement("br");
div.appendChild(br); //添加label ,存放指标名称
var div2 = document.createElement("label");
div2.innerText = data[n].QualitativeTargetName;
div.appendChild(div2); //添加text ,存放指标权重
var input = document.createElement("input");
input.setAttribute('type', 'text');
input.setAttribute('ReadOnly', 'True'); //设置文本为只读类型
input.value = data[n].DevelopmentAllWeight
div.appendChild(input); //添加select 存放指标id
var targetID = document.createElement("select");
targetID.innerText = data[n].QualitativeTargetID;
targetID.setAttribute('hidden', 'hidden');
div.appendChild(targetID);
//添加 %(单位百分比) //换行
var br = document.createElement("br");
div.appendChild(br);
}

用到的知识点:

创建子节点、  父元素动态添加子元素:

  1. div2.innerText = data[n].QualitativeTargetName;
  2. div.appendChild(div2);
div2.innerText = data[n].QualitativeTargetName;
div.appendChild(div2);


设置元素属性:

  1. input.setAttribute('ReadOnly', 'True');  //设置文本为只读类型
input.setAttribute('ReadOnly', 'True');  //设置文本为只读类型


清楚div下的所有元素:

  1. div.innerHTML = "";
div.innerHTML = "";


来张大图,再次总结下DOM(文档对象模型)

总结:学习是个不断反复的过程!

JS动态添加div,然后在div中添加元素的更多相关文章

  1. js动态创建及移除div的方法

    本文实例讲述了js动态创建及移除div的方法.分享给大家供大家参考.具体实现方法如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ...

  2. 【原生js】js动态添加dom,如何绑定事件

    首先要明白浏览器在加载页面的时候是按顺序来加载的,这样以来就很清楚了,js动态添加dom以后,这些dom并没有绑定事件,这个时候最简单的一个办法就是:将绑定事件的方法封装到一个函数A中,在动态添加完d ...

  3. 原生JS动态添加和删除类

    原生JS动态添加和删除类 由于需要, 给按钮组监听点击事件(要求用事件委托),当有一个按钮被点击时,相应的给该按钮添加一个类(激活类),其他没有点击的按钮就要移出该类 添加和和删除类有三种方法 首先等 ...

  4. js 动态添加表单 table tr

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 使用js动态添加组件

    在文章开始之前,我想说两点 1 自己初学js,文章的内容在大神看来可能就是不值一提,但是谁都是从hello world来的,望高   手不吝指教# 2 我知道这个标题起的比较蛋疼,大家看图就能说明问题 ...

  6. 原生js动态添加style,添加样式

    原生js动态添加style,添加样式 第一种 var style="[assign-url='"+str+"']{display:initial}"; var ...

  7. js动态添加onload、onresize、onscroll事件(另类方法)

    js动态添加onload.onresize.onscroll事件(另类方法)   window 的 onload.onresize.onscroll 事件,跟其他的事件不一样,它不能用 attachE ...

  8. MUI 里js动态添加数字输入框后,增加、减少按钮无效

    numbox 的自动初化是在 mui.ready 时完成的mui 页面默认会自动初始化页面中的所有数字输入框,动态构造的 DOM 需要进行手动初始化.比如:您动态创建了一个 ID 为 abc 的数字输 ...

  9. Js动态添加复选框Checkbox

    Js动态添加复选框Checkbox的实例方法!!! 首先,使用JS动态产生Checkbox可以采用如下类似的语句: var checkBox=document.createElement(" ...

  10. form表单 无法提交js动态添加的表单元素问题。。

    第一种情况, 这种情况js动态添加的表单元素是不能提交到服务器端的 <table> <form method="post" action=" url   ...

随机推荐

  1. 使用frp工具实现内网的穿透以及配置多个ssh和web服务

    frp简介 FRP 项目地址 https://github.com/fatedier/frp/blob/master/README_zh.md frp 是一个可用于内网穿透的高性能的反向代理应用,支持 ...

  2. [Usaco2018 Feb]Snow Boots

    Description 到冬天了,这意味着下雪了!从农舍到牛棚的路上有N块地砖,方便起见编号为1-N,第i块地砖上积了fi英尺的雪.在Farmer John的农舍的地窖中,总共有B双靴子,编号为1-B ...

  3. 树形DP UVA 1292 Strategic game

    题目传送门 /* 题解:选择一个点,它相邻的点都当做被选择,问最少选择多少点将所有点都被选择 树形DP:dp[i][0/1]表示当前点选或不选,如果选,相邻的点可选可不选,取最小值 */ /***** ...

  4. [译]Customizing Operations

    Customizing Operations定制操作 There is an ongoing development today where more and more protocols are b ...

  5. js执行顺序——学习笔记

    我们知道有个全局的 window对象,js的一切皆window上的属性和方法.window上有个window.document属性,记录了整个html的dom树,document是顶层. body 和 ...

  6. 设计模式("大话设计模式"读书笔记 C#实现)

    前言:毫无疑问 ,学习一些设计模式,对我们的编程水平的提高帮助很大.写这个博客的时候自己刚开始学习设计模式,难免有错,欢迎评论指正. 我学设计模式的第一本书是“大话设计模式”. 1.为什么要学设计模式 ...

  7. EasyUI tree 异步树与采用扁平化实现的同步树

    所谓好记性不如烂笔头,为了以防忘记,才写下这篇博客,废话不多.. 异步树: tips:   可以采用easyui里的原始数据格式,也可以采用扁平化的数据格式. 使用场景: 当菜单模块数量庞大或者无限极 ...

  8. Redis安全与持久化(适合小白阅读)

    前言:Redis的使用越来越重要.以下仅为个人学习的点点记录.仅供参考. 一.简单的redis安全性设置 1. 生产环境的redis最好建议在redis配置文件中设置bind.配置允许指定的ip登陆r ...

  9. TypeError: string indices must be integers, not str

    1. TypeError: string indices must be integers, not str 字符串类型取第index个字符的时候,应该传入int而不是str.如 1 a='abcde ...

  10. Js onmouseover和onmouseout小特效

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ...