jquery:获取和存储100多个td项目的最有效方法?

时间:2010-04-19 14:46:43

标签: jquery

好的,所以我在页面上有大约六个这样的日历,所以大约有180个td项目(每个日期1个):

http://i44.tinypic.com/eiwphl.jpg http://i44.tinypic.com/eiwphl.jpg

每个td的id都等于当天的时间戳。 我想要的日期是红色的(.booked)类。

所以我需要以最快的方式“序列化”td.booked项目的ID,任何想法?

3 个答案:

答案 0 :(得分:4)

您可以使用.map()获取ID数组,如下所示:

var ids = $("td.booked").map(function() { return this.id; }).get();

这会产生如下数组:

["id1", "id2", "id3", ... ]

答案 1 :(得分:2)

“序列化”究竟是什么意思?

如果在客户端上标记了它们,那么最快的方式来收集对它们的引用将是收集它们。然后,当您需要它时,您已经有了索引,并且不需要追溯查询。

答案 2 :(得分:0)

这个怎么样:

var str = '';

$(function(){
  $('td.booked').each(function(index){
     str += '&td' + index + "=" + encodeURIComponent($(this).text());
  });
});

alert(str);