-4

我在一个数组中有 3 个对象。

myArray = [
{name: "iPhone", link: "www.apple.com"},
{name: "Nokia", link: "www.nokia.com"},
{name: "Google", link: "www.Google.com"}
]

如何创建一个循环并将属性放在一起以显示在页面上,如下所示:

iPhone 诺基亚 谷歌

当你点击它们时有链接

谢谢!

4

3 回答 3

1

使用纯 JS,它会是这样的:

for(var i=0;i<myArray.length;i++){
    var a = document.createElement('a');
    a.href= myArray[i].link;
    a.text= myArray[i].name;
    document.body.appendChild(a);
}

但是使用 jQuery 会容易得多:

您可以使用 jQuery .each()。它将遍历您的数组,您可以使用this.

要建立链接,您需要创建一个a元素并使用.attr()和评估他的价值.text()

$.each(myArray, function(){
    var a = $('<a/>'); //The element itself
    a.attr('href', this.link) //The HREF
    a.text(this.name) //The text
    $('body').append(a) //Append to the body
})
于 2013-05-09T14:05:19.653 回答
0

你可以这样做:

myArray = [
           {name: "iPhone", link: "www.apple.com"},
           {name: "Nokia", link: "www.nokia.com"},
           {name: "Google", link: "www.Google.com"}
         ];
var myDiv = '<div>';
for(var i=0;i<myArray.length;i++){
    myDiv= myDiv+ '<a href=\"'+myArray[i].link+'\">'+myArray[i].name +'</a><br/>';
}
myDiv = myDiv + '</div>';
$('#someDiv').append(myDiv); // append it to some other div

请享用!

于 2013-05-09T14:08:18.937 回答
0

一个循环并将属性放在一起以显示在页面上

听起来你想创建一个 html 字符串:

var list = "<ul>";
for (var i=0; i<myArray.length; i++) {
    list += "<li><a href='"+myArray[i].link+"'>"+myArray[i].name+"</a></li>";
}
list += "</ul>";
$("body").html(list); // or something
于 2013-05-09T14:10:31.977 回答