如何通过javascript中的for循环动态创建ul和li元素

how to dynamically create ul and li elements by for loop in javascript

本文关键字:ul 创建 li 元素 动态 循环 何通过 javascript 中的 for      更新时间:2023-09-26

我正试图使用javascript在代码中创建ul和li元素。我的javascript代码:

 for (var i =0;i<locations.length;i++)
 {
     //how to dynamic create ul and li code as follow ul and li code?????
     }

ul和li代码:

<li>
        <label for="Device"><SCRIPT LANGUAGE="JavaScript">  document.write("show javascript value like the the locations[i]")  </SCRIPT></label> <input type="checkbox" id="Device" /> 
        <ol>
            <li class="file"><a href="">File 1</a></li>
            <li>
                <label for="subfolder2">Subfolder 1</label> <input type="checkbox" id="subfolder2" /> 
                <ol>
                    <li class="file"><a href="">Subfile 1</a></li>
                    <li class="file"><a href="">Subfile 2</a></li>
                    <li class="file"><a href="">Subfile 3</a></li>
                    <li class="file"><a href="">Subfile 4</a></li>
                    <li class="file"><a href="">Subfile 5</a></li>
                    <li class="file"><a href="">Subfile 6</a></li>
                </ol>
            </li>
        </ol>
    </li>

检查here。。。

脚本:

var ul = document.createElement("ul");
document.body.appendChild(ul);
for (var i = 1; i <= 10; i++)
{
    var li = document.createElement("li");  
    li.className = "file";
    var a = document.createElement("a");
    a.innerHTML = "Subfile " + i;
    li.appendChild(a);
    ul.appendChild(li);
}

这样你就可以创建你想要的订单。。

请检查示例

HTML

<li>
        <label for="Device"><SCRIPT LANGUAGE="JavaScript">  document.write("show javascript value like the the locations[i]")  </SCRIPT></label> <input type="checkbox" id="Device" /> 
        <ol>
            <li class="file"><a href="">File 1</a></li>
            <li>
                <label for="subfolder2">Subfolder 1</label> <input type="checkbox" id="subfolder2" /> 
                <div id='mi'></div>
            </li>
        </ol>
    </li>

JS

var text = '<ol>';
    for (var i =0;i<6;i++)
    {
             text = text + "<li class='file'><a href=''>Subfile " + i + "</a></li>";
    }
 text = text +'</ol>';
document.getElementById('mi').innerHTML=text; 

在这里,我已经将<LI>放入js中的for循环中,并将其存储到变量中,然后将其设置在div html上。

我刚刚回答了一个类似的问题,早些时候,看一下我在这里使用一些jQueries效果的例子

var list = $('#theList li:last-child'),
    limit = 20,
    current = 0;
function rand() {
    return Math.random().toString(36).substr(2); // Just for some random contnt
}
$('#trigger').click(function() { // We're using a static button to start the population of the list
        var end = setInterval(function() {
            if ( current == limit ) {
                current = 0;
                clearInterval(end);
            }
            list.append('<li style="display:none;color:green;">' + rand() + '</li>');
            var newList = $('#theList li:last-child');
            newList.fadeIn();
            var colorEnd = setInterval(function() {
                    newList.css('color', 'black');
                    clearInterval(colorEnd);
            }, 350);
            current =  current + 1;
        }, 300);
});