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

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

动态往div中添加元素:

基本思路是:

先使用   var div = document.getElementById("DvelopmentTarget"); 

var input = document.createElement("input");  创建两个元素(父元素和子元素),

再用appendChild()方法,把子元素塞到父元素中 div.appendChild(input); 

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、往某个元素中添加子元素--appendChild与insertBefore可以把元素插入到DOM树中:

div.appendChild(div2);

3、设置元素属性:

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

4、清除div下的所有元素:

div.innerHTML = "";

5、insertBefore(newItem,existingItem) 方法在您指定的已有子节点之前插入新的子节点。

 

dom图:

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐