2010-08-17 3 views
3

У меня есть таблица HTML со многими строками. У меня есть семь столбцов. Каждая ячейка (<td>) в таблице имеет атрибут ID с сеткой [x] [y], где x и y представляют столбцы и строки соответственно.Как навалом выбрать <td> с помощью jQuery

Пример <td> ы являются

<td id="grid[2][2]" class="available"...> -- This indicates 3rd column 3rd row 
<td id="grid[2][4]" class="unavailable"...> -- This indicates 3rd column 5th row 

и так далее.

Теперь мне нужно написать запрос, который дает мне количество столбцов с классом = "available" или class = "unavailable". Как написать это в jQuery?

Таким образом, для получения первого столбца, который имеет класс = «доступен», было бы что-то вроде этого,

(id = grid[0]* and class == "available").size 

Пожалуйста, помогите мне превратить выше (глупый вопрос) в осмысленное JQuery.

ответ

7

Здесь

$("td[id^='grid[0]'].available").length 

должно дать вам несколько ТД с классом доступной и 0 строки. И вы можете изменить номер строки и получить другие.

+1

Это то, что я собирался, но похоже, что у вас все получилось. –

+0

работал безупречно .. спасибо !!! – bragboy

0

Как насчет этого?

вот код

var $column_number = 2; 
var $total_for_column_2 = 0; 
for(var $i=0;$i<$total_number_of_rows;$i++) { 
    if ($("td[id=grid[+ $i +"]["+ $column_number +"]").hasClass("available")) { 
    $total_for_column2++; 
    } 
} 

это один цикл по определенному колонку, проверяет, есть ли у него есть доступный класс и добавляет его

1
$("td[id|=grid].available") 

Это «TDs, которые имеют идентификатор, начинающийся с ' сетка 'и класс' avaiable ''

Теперь проблема заключается в том, что скобки используются для селектора «атрибут поиска», и я не уверен, как использовать его в текстовом поле поиска на.

0

Другой подход можно использовать, если вы не хотите, чтобы полагаться на id с ячеек будет:

$("#myTable").find("td:nth-child(1).available").length 

Имейте в виду, что селектор nth-child является 1 на основе, а не 0 на основе.

Смежные вопросы