如何在js中循环赋值给页面上的li附上标签?

JavaScript013

如何在js中循环赋值给页面上的li附上标签?,第1张

js 动态添加li代码:

<ul id="parentUl"><li>原li</li></ul>

 function addElementLi(obj) {var ul = document.getElementById(obj) //添加 livar li = document.createElement("li") //设置 li 属性,如 idli.setAttribute("id", "newli") li.innerHTML = "js 动态添加li"ul.appendChild(li)}

调用:addElementLi("parentUl")

用 js 动态添加元素,就不会有那么复杂的字符串出现,代码阅读性强一点,也容易理解。用代码的方式在js中给li附上标签。

一、js 动态添加元素div:

<div id="parent"></div> function addElementDiv(obj) {var parent = document.getElementById(obj) //添加 divvar div = document.createElement("div") //设置 div 属性,如 iddiv.setAttribute("id", "newDiv") div.innerHTML = "js 动态添加div"parent.appendChild(div)}

调用:addElementDiv("parent")

二、js 动态添加元素img:

<ul id="parentUl"></ul>

 function addElementImg(obj) {var ul = document.getElementById(obj) //添加 livar li = document.createElement("li") //添加 imgvar img = document.createElement("img") //设置 img 属性,如 idimg.setAttribute("id", "newImg") //设置 img 图片地址img.src = "/images/prod.jpg" li.appendChild(img)ul.appendChild(li)}

调用:addElementImg("parentUl")

<meta charset="utf-8" />如果出现乱码请把utf-8设置为gbk<br /><style type="text/css">/*先定义三个颜色类*/.ys1{background-color:#f00}.ys2{background-color:#0f0}.ys3{background-color:#00f}</style>ok颜色样式有了<br />来,做个输入框<br />这位仁兄,你要打印多少<input type="text" id="n" value="10" /><input type="button" value="开始打印" onclick="print()" /><br />给编辑框加id(我设置为n),方便等会取数量<br />给按钮加上事件,被单击调用print()<br />接下来我们开始写print()<br />。。等会忘了,在加个标签(id=rs)用来显示结果<br /><ol id="rs"></ol><script type="text/javascript">function print(){//创建一个print()//1.取出打印数量赋值给变量$nvar $n=document.getElementById("n").value//好,提示一把看看有没有成功alert("哥,你想打印"+$n+"个li,没事,一定要是整数哦!还有别输几万,免得你机器顶不住")//来,创建样式类名数组用来作为等会给li赋值类名var $style=["ys1","ys2","ys3"]//就是我们刚刚定义的样式var $z=0//初始化为0,让他指向数组第一个元素//在定义一个变量存放结果var $rs=""//初始化为空//要让他循环$n次for(var $i=0$i<$n$i++){if($z==$style.length){//判断指针是否指到外面去了。。。这里一定要好好理解$z=0}$rs+='<li class="'+$style[$z]+'">'$rs+="这是第"+($i+1)+"个li,这个时候这个li的累名为"+$style[$z]+"</li>"$z++//自身加1}//好循环完成,结果在$rs中document.getElementById("rs").innerHTML=$rs}</script>