2016-02-20 204 views
0

我有一个HTML的结构是这样的:如何创建一个包含​​元素值的数组?

<table> 
    <tr> 
    <td>Jack</td> 
    <td>Peter</td> 
    <td>Barmar</td> 
    </tr> 
</table> 

现在我试图创建所有这些名称的JS数组。我想是这样的:

var Names = ["Jack", "Peter", "Barmar"]; 

其实我可以用this regex选择那些名称:

/\<td\>(.*)\<\/td\>/g 

但我不知道我怎么能提取他们从HTML并创建JS-包含它们的数组。我怎样才能做到这一点?

+1

'变种名称= $( 'TD')。图(函数() {return $(this).text();})。get( );' – billyonecan

回答

1

使用jQuery JavaScript的

var Names = $('td').map(function() { return $(this).text(); }).get();

var Names = [], tdEls = document.getElementsByTagName('td'), 

for (var i = 0; i < tdEls.length; i++) { 
    Names.push(tdEls[i].innerHTML); 
} 

Here's a fiddle

2
var array = $('td').map(function() { 
    return $(this).text(); 
}).get(); 

FIDDLE DEMO

map函数返回一个jQuery集合不具有联接函数。您需要先使用get函数将其转换为标准数组。

相关问题