javascript - 查询 : how to add <li> in an existing <ul> with json data

标签 javascript jquery json

我有这样的代码:

<div id="tags">
  <ul>
  </ul>
</div>

我想使用 json 数据将一些项目附加到列表中

 $.getJSON("data.json", function (data) {
            var html = '';
            var len = data.tags.length;
            for (var i = 0; i < len; i++) {
                html += '<li><a href="#">' + data.tags[i].tag + '</a></li>';
            }

            $("#tags ul").append(html);


        })
        .done(function () {
            console.log("second success");
           })
       .fail(function(err){console.log(err)});

但是没有任何反应,我的错误在哪里?

最佳答案

您的方法

只要 data.json 中的 JSON 结构采用以下格式,您的代码就可以正常工作 -

{
"tags": [
    {
        "tag": "Tag1"
    },
    {
        "tag": "Tag2"
    },
    {
        "tag": "Tag3"
    },
    {
        "tag": "Tag4"
    }
]
}

建议的方法

如果你的 JSON 是这种结构 -

{
"tags": [
    "Tag1",
    "Tag2",
    "Tag3",
    "Tag4"
]
}

让它工作的 javascript 是 -

$(document).ready(function(){
    $.getJSON( "data.json", function( data ) {
        var items = '';
        $.each( data.tags, function( key, val ) {
            items += '<li id="' + key + '"><a href="#">' + val + '</a></li>';
        });
        $("#tags ul").append(items);
    }).done(function () {
        console.log("Success");
    }).fail(function(err){
        console.log(err)
    });
});

这将在您的 DOM 中生成以下 HTML -

<div id="tags">
    <ul>
        <li id="0"><a href="#">Tag1</a></li>
        <li id="1"><a href="#">Tag2</a></li>
        <li id="2"><a href="#">Tag3</a></li>
        <li id="3"><a href="#">Tag4</a></li>
    </ul>
</div>

关于javascript - 查询 : how to add <li> in an existing <ul> with json data,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23878363/

相关文章:

javascript - Socket.io 会乱序发送吗?如果不稳定怎么办?

javascript - 从 html 调用 javascript 函数不起作用

javascript - 如何获取点击的按钮和上传的文件的json数据值?

json - Flutter后端开发从何入手?

mysql - Rails & JBuilder - DECIMAL(10,2) 输出为字符串的数据类型

json - 如何使用 Nodejs 将 json 数据导出为指定格式的 pdf 文件?

Javascript获取json对象的最后一个值

javascript - Markdown-it 不工作,在页面加载时抛出错误

javascript - 当文本在透明 div 下通过时更改颜色

jquery - 制作一个div位置:fixed only after it is scrolled to