Điều này không quá khó. Cách đơn giản là thêm qua .append:
$( '#table > tbody:last').append('<tr id="id"><td>stuff</td></tr>');
Việc thêm các phần tử theo thời gian thực không hoàn toàn có thể thực hiện được. Bạn phải chạy một truy vấn Ajax cập nhật trong một vòng lặp để "bắt" thay đổi. Vì vậy, không hoàn toàn theo thời gian thực, nhưng rất, rất gần với nó. Người dùng của bạn thực sự sẽ không nhận thấy sự khác biệt, mặc dù tải của máy chủ của bạn có thể.
Nhưng nếu bạn muốn tham gia nhiều hơn, tôi khuyên bạn nên xem DataTables . Nó cung cấp cho bạn một số tính năng mới, bao gồm sắp xếp, phân trang, lọc, giới hạn, tìm kiếm và tải ajax. Từ đó, bạn có thể thêm một phần tử thông qua ajax và làm mới chế độ xem bảng hoặc chỉ cần thêm vào thông qua API của nó. Tôi đã sử dụng DataTables trong ứng dụng của mình một thời gian và chúng liên tục được coi là tính năng số 1 giúp sử dụng được lượng lớn dữ liệu.
- Chỉnh sửa -
Bởi vì nó không rõ ràng, để cập nhật DataTable mà bạn gọi, hãy đặt lệnh gọi Datatable của bạn thành một biến:
var oTable = $('#selector').dataTable();
Sau đó, chạy cái này để cập nhật:
oTable.fnDraw(false);
CẬP NHẬT - 5 năm sau, tháng 2 năm 2016:Điều này ngày nay khả thi hơn nhiều so với năm 2011. Các khung công tác Javascript mới như Backbone.js có thể kết nối trực tiếp với cơ sở dữ liệu và kích hoạt các thay đổi trên các phần tử giao diện người dùng, bao gồm các bảng về thay đổi, cập nhật hoặc xóa dữ liệu .... đó là một trong những lợi ích chính của khung này. Ngoài ra, giao diện người dùng có thể được cung cấp các bản cập nhật theo thời gian thực thông qua các kết nối socket tới một dịch vụ web, sau đó cũng có thể được phát hiện và xử lý. Mặc dù kỹ thuật được mô tả ở đây vẫn hoạt động, nhưng ngày nay có nhiều cách "sống" hơn để thực hiện.