Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jquery:如何添加<;李>;在现有的<;ul>;使用json数据_Javascript_Jquery_Json - Fatal编程技术网

Javascript Jquery:如何添加<;李>;在现有的<;ul>;使用json数据

Javascript Jquery:如何添加<;李>;在现有的<;ul>;使用json数据,javascript,jquery,json,Javascript,Jquery,Json,我有如下代码: <div id="tags"> <ul> </ul> </div> { "tags":[ {"tag":"name1"}, {"tag":"name2"}, {"tag":"name3"} ] } 我想使用json数据将一些项目附加到列表中 $.getJSON("data.json", function (data) { v

我有如下代码:

<div id="tags">
  <ul>
  </ul>
</div>
{
    "tags":[
        {"tag":"name1"},
        {"tag":"name2"},
        {"tag":"name3"}
    ]
}

我想使用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)});
$.getJSON(“data.json”),函数(数据){
var html='';
var len=data.tags.length;
对于(变量i=0;i

但是什么也没发生,我的错误在哪里?

你的方法

只要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)
    });
});
$(文档).ready(函数(){
$.getJSON(“data.json”),函数(数据){
var项目=“”;
$.each(data.tags,function(key,val){
items+='
  • ; }); $(“#标签ul”)。附加(项目); }).done(函数(){ 控制台日志(“成功”); }).失败(功能(错误){ console.log(错误) }); });
    这将在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>
    
    
    

    处理测试json

    在您的例子中,问题是进行重定向的json的url

    在(然后单击“提出请求”)站点中进行测试,并查看解释问题的错误消息

    我们无法成功向发出请求

    这可能是因为跨站点HTTP请求和您的服务器 没有适当的访问控制允许源和 访问控制允许方法头


    您的json文件似乎无效。
    也许你用单引号而不是双引号或其他什么。检查您的
    data.json
    文件
    根据您的js代码,您的文件
    data.json
    应该如下所示:

    <div id="tags">
      <ul>
      </ul>
    </div>
    
    {
        "tags":[
            {"tag":"name1"},
            {"tag":"name2"},
            {"tag":"name3"}
        ]
    }
    

    您在浏览器控制台中看到了哪些错误消息?您能提供调用data.JSON返回的JSON示例吗?您能发布一些代码吗?我们不需要非现场演示。您需要提供足够的信息来重现问题,以及控制台中的错误消息。@CookieMonester是的,您是对的,我很抱歉。好的,我已经更新了代码,我认为这不是最好的选择,但它对我有效。Thanx@faby!很高兴帮助你@Klaus