Tôi hiện đang triển khai một cái gì đó như this post (cụ thể, hiệu ứng diễn ra khi hàng được nhấp)Làm thế nào để biết chỉ số của một <tr> bên trong một <table> với jQuery?
Làm cách nào để biết chỉ mục của hàng nằm bên trong bảng?
Tôi hiện đang triển khai một cái gì đó như this post (cụ thể, hiệu ứng diễn ra khi hàng được nhấp)Làm thế nào để biết chỉ số của một <tr> bên trong một <table> với jQuery?
Làm cách nào để biết chỉ mục của hàng nằm bên trong bảng?
Nếu bạn định nghĩa xử lý nhấp chuột trực tiếp trên tr
yếu tố, bạn có thể sử dụng phương pháp index
như thế này:
$('#tableId tr').click(function() {
var rowIndex = $('#tableId tr').index(this); //index relative to the #tableId rows
});
Nếu sự kiện nhấn là ràng buộc không trực tiếp trên các yếu tố tr
(nếu bạn đang sử dụng một neo, một nút, vv ...), bạn nên tìm gần nhất tr
để có được chỉ số đúng:
$(selector).click(function() {
var rowIndex = $('#tableId tr').index($(this).closest('tr'));
return false;
});
Hãy thử một ví dụ here.
này sẽ không làm việc đúng nếu trang đó có nhiều bảng. Có lẽ tốt nhất là tìm kiếm các phần tử anh chị em '
Không nên chọn bộ gọi $ .index() bị giới hạn trong bảng cha của bất kỳ TR nào được nhấp, thay vì thẻ bảng chung? – Sampson
@TM, @Jonathan: là lỗi đánh máy, bị hạn chế đối với phần tử '# tableId' – CMS
này nên làm việc:
Bạn không cần
tr
trong cuộc gọi đếnsiblings
nếu bạn chắc chắn html của bạn sẽ được well-formed.Nguồn
2009-12-07 06:34:49
Để trả lời câu hỏi đầu tiên của bạn:
Nếu bạn chỉ làm:
và bạn có nhiều bảng trên trang, bạn sẽ nhận được một kết quả sai lầm.
Điều đó đang được nói, bạn không cần biết chỉ mục để di chuyển các hàng lên xuống trong bảng. Ví dụ:
với một cái gì đó như:
Nguồn
2009-12-07 06:35:14 cletus
Điểm tốt, bạn thực sự không cần chỉ mục chút nào. –
Các vấn đề liên quan