第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用本地存儲中的數(shù)據(jù)元素將 <li> 添加到 <ul>

如何使用本地存儲中的數(shù)據(jù)元素將 <li> 添加到 <ul>

一只斗牛犬 2022-07-08 17:52:09
所以我正在嘗試創(chuàng)建一個具有唯一值的輸入列表,這些值是從一組對象中獲取的。但由于某種原因,它只迭代一次并停止。function loadLayer() {//Get the object from local storagevar project = JSON.parse(localStorage.getItem('project'));var projectLayers = project.layersfor (var x = 0; x < projectLayers.length; x++) {    var x = createLayer(projectLayers[x].name)    appendLayer(x)  }}所以項目層基本上是一個數(shù)組[{id=1,name="bob},{id=2,name="kevin"}]function createLayer(name) {  var li = document.createElement("li");  li.className = "list-group-item"  var x = document.createElement("INPUT")  x.setAttribute("type", "text")  x.setAttribute("value", name)  li.appendChild(x)  return li}function appendLayer(layer) {  var layerList = document.getElementById("layerList")  layerList.appendChild(layer)}并且 appendlayer 只是將 li 添加到 ul但是,在我運行程序后,我只有一個里面有一個帶鮑勃的輸入。另一個沒有去哪里。我嘗試打印以查看是否調(diào)用了第二個循環(huán),但看起來不像。我不知道為什么,被困了幾個小時。
查看完整描述

2 回答

?
拉風(fēng)的咖菲貓

TA貢獻(xiàn)1995條經(jīng)驗 獲得超2個贊

就像您被告知的那樣,您需要小心命名變量的方式。其次,我還建議使用let而不是var。因為您可以輕松地覆蓋在其初始范圍之外使用var聲明的變量。


現(xiàn)在到您的代碼: 我對您的代碼進行了一些編輯,尤其是loadLayer 函數(shù),它將兩個名稱都附加到列表中:


<script>


    let projectList = [

        {

            id:1,

            name:"bob"

        },

        {

            id:2,

            name:"kevin"

        }

    ]


    function loadLayer() {

        window.localStorage.setItem('project', JSON.stringify(projectList));

        let p = JSON.parse(window.localStorage.getItem('project'));


        for (let i = 0; i < p.length; i++) {


            let projectName = createLayer(p[i].name)

            appendLayer(projectName)


        }

    }



    function createLayer(name) {


        let li = document.createElement("li");

        li.className = "list-group-item"


        let x = document.createElement("INPUT")

        x.setAttribute("type", "text")

        x.setAttribute("value", name)


        li.appendChild(x)

        return li

    }


    function appendLayer(layer) {

        let layerList = document.getElementById("layerList")

        layerList.appendChild(layer)

    }


    loadLayer()

</script>


查看完整回答
反對 回復(fù) 2022-07-08
?
MMTTMM

TA貢獻(xiàn)1869條經(jīng)驗 獲得超4個贊

您將循環(huán)中的迭代變量命名為,xvar x = createLayer(projectLayers[x].name)與它發(fā)生沖突,更改其中之一。



查看完整回答
反對 回復(fù) 2022-07-08
  • 2 回答
  • 0 關(guān)注
  • 167 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號