网上也查了很多关于JavaScript动态加载ul标签的文章,但是感觉不是很全,自己边查边琢磨着代码,给我蒙对了。看看吧!
我想实现的功能很简单,就是查到数据库有数据,就在前台显示<ul>标签,有几条数据,显示几个标签。
那么开始了:
首先默认数据库是没有数据的,那么就默认显示无到期的任务。
<ul class="task_main" id="ultask">
<li id="showlist1" style="display:none">
<a>
<div>
<h2>暂无今天内到期的任务</h2>
</div>
</a>
</li>
<li id="showlist2" style="display:none">
<a>
<div>
<h2>暂无5天内到期的任务</h2>
</div>
</a>
</li>
</ul>
var ul1 = document.getElementById("showlist1");
var ul2 = document.getElementById("showlist2");
var projectid=data.Data.Projects1["0"].ProjectId;
if (projectid=="")
{
<span style="white-space:pre"> </span>if (ul1.style.display == "none") {
ul2.style.display = "none";
ul1.style.display = "";
}
}
结果如下:
//从数据库获取的参数
var result = data.Data.Projects1["0"];
var k = data.Data.Projects1["length"];
var ul = document.getElementById("ultask");
var stepname = result.StepName;
var companyname = result.CompanyName;
var projecttype = (result.ProjectType == 1) ? "项目1" : "项目2";
var enddate = result.PerformDateString;
var li = document.createElement("li");
var a = document.createElement("a");
var div = document.createElement("div");
var h2 = document.createElement("h2")
h2.innerHTML = stepname;//步骤名称
var span1 = document.createElement("span");
var span2 = document.createElement("span");
var span3 = document.createElement("span");
span1.innerHTML = companyname;//公司名称
span2.innerHTML = projecttype;//项目类型
span3.innerHTML = enddate;//截止日期
//根据查到的数据条数动态增加ul标签
for (var i = 1; i <= k; i++) {
ul.appendChild(li);
li.appendChild(a);
a.appendChild(div);
div.appendChild(h2);
div.appendChild(span1);
div.appendChild(span2);
div.appendChild(span3);
}