Cá nhân, những gì tôi đã làm trong quá khứ là cung cấp cho họ một id lớp chung và sử dụng nó để chọn chúng. Nó có thể không lý tưởng vì chúng có một lớp được chỉ định có thể không tồn tại, nhưng nó làm cho việc lựa chọn trở thành một địa ngục dễ dàng hơn rất nhiều. Chỉ cần chắc chắn rằng bạn là duy nhất trong tên lớp của bạn.
tức là ví dụ trên tôi sẽ sử dụng lựa chọn của bạn theo lớp. Vẫn tốt hơn là thay đổi tên lớp từ in đậm thành 'tcol1', vì vậy bạn không nhận được bất kỳ sự vô tình nào trong kết quả jQuery. Nếu in đậm thực sự đề cập đến một lớp CSS, bạn luôn có thể chỉ định cả hai trong thuộc tính lớp - tức là 'class = "tcol1 bold"'.
Tóm lại, nếu bạn không thể chọn theo Tên, hãy sử dụng bộ chọn jQuery phức tạp và chấp nhận bất kỳ lần nhấn hiệu suất liên quan nào hoặc sử dụng bộ chọn Lớp.
Bạn luôn có thể giới hạn phạm vi jQuery bằng cách bao gồm tên bảng tức là $ ('# tableID> .bold')
Điều đó sẽ hạn chế jQuery tìm kiếm "thế giới".
Nó vẫn có thể được phân loại là một bộ chọn phức tạp, nhưng nó nhanh chóng hạn chế mọi tìm kiếm trong bảng với ID '#tableID', do đó giữ cho việc xử lý ở mức tối thiểu.
Một cách khác nếu bạn đang tìm kiếm nhiều hơn 1 phần tử trong # bảng1 sẽ là tìm riêng phần này và sau đó chuyển nó cho jQuery vì điều này giới hạn phạm vi, nhưng tiết kiệm một chút xử lý để tìm kiếm mỗi lần.
var tbl = $('#tableID');
var boldElements = $('.bold',tbl);
var rows = $('tr',tbl);
if (rows.length) {
var row1 = rows[0];
var firstRowCells = $('td',row1);
}