Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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 动态链接_Javascript_Jquery - Fatal编程技术网

Javascript 动态链接

Javascript 动态链接,javascript,jquery,Javascript,Jquery,我在json文件中有一些链接 <code> "links": [ {"link": "http://www.google.com/", "id": "1" }, {"link": "http://www.poogle.com/", "id": "2" }, {"link": "http://www.foogle.c

我在json文件中有一些链接

<code>
"links": [
            {"link": "http://www.google.com/",
             "id": "1"
            },
            {"link": "http://www.poogle.com/",
             "id": "2"
            },
            {"link": "http://www.foogle.com/ ",
             "id": "3"
            },

]
</code>
在一个网页上,我会喜欢一个js函数或脚本,将动态写入url href

所以如果我在一个页面上,href是

 <a href  id=”1”> </a>
JS

for(变量i=0;i
HTML



首先,以数字开头的ID无效-将其更改为前面有字母:)

除此之外,这还可以:

for (var i = 0; i < links.length; i++) {
  var link = links[i];
  $('#' + link.id).attr('href', link.link);
}
for(var i=0;i
编辑


此外,正如John Hartsock在上面提到的,请确保使用标准的双引号来包围属性值,而不是原始代码中显示的卷曲引号。

如果不想使用jQuery,可以这样做:

for (var i = 0; i < links.length; i++) {
  var link = links[i];
  document.getElementById(link.id).setAttribute('href', link.link);
}
for(var i=0;i
var linksObj={“links”:[
{“链接”:http://www.google.com/",
“id”:“1”
},
{“链接”:http://www.poogle.com/",
“id”:“2”
},
{“链接”:http://www.foogle.com/ ",
“id”:“3”
},
]};
对于(变量i=0;i

只是一个注释,但,有什么有趣的引号(
)?这可能会导致您以后出现问题。“1”不是有效的ID,顺便说一句。请看。最后一个}后面是逗号吗?嘿,克莱夫,我在实现这一点时遇到了一些问题。嘿,阿米特,我将JSON内容放在JSON文件中,然后将FOR循环放在JSON文件中,但它仍然不起作用。您之前没有评论它起作用吗?向我们展示您拥有的确切代码(更新您的问题)。HTML中如何包含JSON文件和javascript文件?也向我们展示该代码。特别是如何从JSON填充linksObj变量。
<a id='1'></a><br>
<a id='2'></a>
for (var i = 0; i < links.length; i++) {
  var link = links[i];
  $('#' + link.id).attr('href', link.link);
}
for (var i = 0; i < links.length; i++) {
  var link = links[i];
  document.getElementById(link.id).setAttribute('href', link.link);
}
var linksObj = {"links": [
            {"link": "http://www.google.com/",
             "id": "1"
            },
            {"link": "http://www.poogle.com/",
             "id": "2"
            },
            {"link": "http://www.foogle.com/ ",
             "id": "3"
            },

]};

for (var i = 0; i < linksObj.links.length; i++) {
    var linkObj = linksObj.links[i];
    var elem = document.getElementById(linkObj.id);

    if (elem) {
       elem.href = linkObj.link;
       elem.innerHTML = linkObj.link;
    }
}