0

我使用以下代码从页面获取链接,但是当我尝试将其写入数组时,我收到错误消息。我用 Firebug-Console 对其进行了测试。

function getElements() {
var mylinks = new Array();

    for (var i=1;i<50;i++){
    var linkID = "websiteLink" + i;
    var element = window.document.getElementById(linkID).innerHTML;
    mylinks[i-1] = element;
     }
    //alert(mylinks[0]);

}

getElements();
4

1 回答 1

0

尝试

function getElements() {
var mylinks = new Array();

    for (var i=1;i<50;i++){
    var linkID = "websiteLink" + i;
    var element = document.getElementById(linkID);
    if(element !== null)mylinks.push(element.innerHTML);
     }
    //alert(mylinks[0]);

}

getElements();

您正在尝试访问 Dom 节点的 innerHTML 属性的 value 属性

我建议在这里使用 jquery 来获得更多的故障安全/跨浏览器结果。将“websiteLink”作为一个类添加到您想要获取的所有链接中。

var mylinks = [];
$('.websiteLink').each(function(idx,item){
mylinks.push($(item).html());
});
alert(mylinks);
于 2013-03-19T11:02:07.857 回答