Using jQuery how do I select a range of rows?

随声附和 提交于 2019-12-28 03:12:09

问题


Does a jQuery only solution exist for selecting a range of rows from a table?

I know 'eq', 'lt', 'gt' exist, but I'm looking for a combination of those selectors.


回答1:


You can apply more than one filter at a time, although the 2nd filter applies to the results of the first, so the following would highlight starting from the 4th row (skips 0..2), and highlight for 3 rows (includes 0..2):

$('#t tr:gt(2):lt(3)').css('background-color', '#f00');



回答2:


Because :gt() is a jQuery extension... using :gt() cannot take advantage of the performance... For better performance in modern browsers, use $("css-selector").slice(index) instead.

Which says, it's better to use native array method slice to achieve the goal.

$('ul > li').slice(start, end).css("color", "blue")

Direct link: http://api.jquery.com/gt-selector/




回答3:


You could use the jQuery filter; one form of this takes a callback function as an argument — you can write any complex code in it for the selection.




回答4:


You can use the nthChild selector with an equation argument.




回答5:


You can chain your 'eq', 'lt', 'gt' and this will progressively filter each successive returned array.



来源:https://stackoverflow.com/questions/1059625/using-jquery-how-do-i-select-a-range-of-rows

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!