2010-06-21 6 views
0

jquery 기준에서 이상의 연산자를 사용할 수 있습니까 예를 들어, rowindex가 특정 값 이상인 모든 행을 가져 오려고합니다. 어떻게 든 가능하거나 jquery에서 결과를 얻으면 내 자신의 함수를 만들어야합니까?id가 jquery의 값보다 큰 경우를 비교하는 방법

+0

더 자세히 설명해 ... – Reigel

답변

3

을, 당신은 단지 :gt() 선택 사용할 수 있습니다 다른 시나리오에 대한

// Get all rows with a rowIndex greater than 5: 
var rowsPlus5 = $('#mytable tr:gt(5)'); 

을, 당신이해야 할 수도 있습니다 .filter() 메서드를 콜백 함수와 함께 사용하는 방법.

+0

이것은 jquery에서 multuiple critieria를 연결하는 방법에 대한 좋은 아이디어입니다. 예를 들어, 내가 td를 사용하여 alreay 인 경우 : table.find ("td [ColumnName ="+ searchColumn + "] : contains ('"+ searchVal + ")") () critieria도 그렇다면 어떻게 든 연결할 수 있습니까? – Rubans

+0

@Rubans : 아마도 외설스러운 일에 접해있을 것입니다. 그런 복잡한 선택기를 사용하지 않으려 고합니다. 'table.find ("tr : gt (5)> td [ColumnName ="+ searchColumn + "] : contains ('"+ searchVal + ")")'. TD 요소가 아니라 일치하는 TR에 대한 참조 만 원한다면'.has()'메소드 나': has()'selector를 사용할 수도있다. –

+0

has()는 어떻게 사용합니까? 다음은 아무 것도 반환하지 않는 것 같습니다 : table.find ("td [ColumnName ="+ searchColumn + "] : icontains ('"+ searchVal + ") "); – Rubans

1
var $filtered = $('table').find('tr').filter(function(){ 
    return (this.rowIndex > 5); 
}); 

작동.

$('table').children('tr')과 작동하지 않습니다. 왜 그런지 모르겠습니다. 누군가 제발?

+2

$ ('테이블') 어린이 ('TR')는 아무것도 발견하지 : 표> TBODY> TR –

+1

['table.tBodies'의 문서를 참조하십시오 ] (https://developer.mozilla.org/en/DOM/table.tBodies)에서, ''요소가 지정되지 않은 경우 자동으로 DOM에 삽입됩니다. ' '요소는 그 자식 요소 인''입니다. –

0

나는 다음과 같은 것을 시도 할 것이다 : 당신의 질문에서 언급 한 예를 들어

$('tr.selector').each(function(){ 
    var rowId = $(this).index(); 
    if (rowId > 5){ 
     $(this).addClass('red'); 
    } 
}); 
0

당신은 할 수 있습니다 :

.slice(start, [ end ]);

는 인덱스의 범위로 지정 하위 집합에 일치하는 요소의 집합을 줄일 수 있습니다.

시작 요소가 선택된 이다 후 0 계 위치를 나타내는 정수. 음수 인 경우 집합의 끝에서 오프셋을 나타냅니다.
end 0- 기반 위치를 나타내는 정수로, 전에 요소 이 선택되지 않습니다. 음수 인 경우 은 세트 끝의 오프셋을 나타냅니다. If omitted, the range continues until the end of the set. . 그럴 필요가 TBODY의 자녀이기 때문에

관련 문제