[jQuery]:追加一个选择器

时间:2009-12-30 17:23:00

标签: jquery jquery-selectors

我正在尝试编写一个可重用的函数来检索传递给它的表中的所有数据并将其存储在数组中。

我不确定如何将引用传递给表。

我可以做点像......

passTableRef($('#tableId th'),$('#tableId td'));

但我想传递表格参考,以防我想详细说明这个功能。

有没有办法传递$('#tableId')并在函数中追加$('#tableId th')$('#tableId td')的引用?

编辑:澄清

我想知道你是否可以参考 - $(#tableId)

将其传递给函数 - reusableFunction($('#tableId'))

然后做这样的事情..

function reusableFunction(table)
{
  //change the selector $("#tableId") to $("#tableId th")
}

3 个答案:

答案 0 :(得分:2)

只需通过表格,然后使用find继续浏览任意内容。

someFunc( $('#tableId') );

...然后

function someFunc( table ) {
  var tds = table.find('td');
}

答案 1 :(得分:0)

如果您只想要对特定表的引用,则应该只需要标识符:$('#tableId')完全指向表。如果您稍后需要引用更具体的部分,只需将jQuery对象放入函数中,并使用thtd查看add("td")add("th")部分。

答案 2 :(得分:0)

如果你有一个jQuery对象,可以使用选择器调用find()来查找后代元素。所以你可以有这样的功能:

function findTableElements(table) {
  var th = $(table).find('th');
  var td = $(table).find('td');
}

并像这样使用它:

findTableElements($('#tableId'));

有关查找功能的更多信息,请参阅文档http://docs.jquery.com/Traversing/find#expr