Tôi đang cố gắng liên kết với lưới kendo có thể cuộn từ javascript và gặp một số vấn đề với chiều rộng cột. Điều này fiddle chứng minh vấn đề (mã ở cuối câu hỏi). Tôi đang chỉ định tiêu đề trong html và thêm chiều rộng vào một trong các tiêu đề. Sau đó, javascript sẽ đặt dataSource (trong mã sản xuất, điều này được thực hiện thông qua cuộc gọi ajax).Chiều rộng cột lưới Kendo + Có thể cuộn
Tôi muốn tránh phải thiết lập thuộc tính columns.width trong javascript vì
- Tôi có nhiều lưới đó, kể từ viewmodels của tôi được xây dựng một cách cẩn thận có thể tự động phân biệt các cột cần thiết. Chúng tôi có hơn 100 gird trong ứng dụng của chúng tôi và phải xác định danh sách cột cho tất cả chúng sẽ khó sử dụng.
- Dù sao cũng sai, đây là thông tin tạo kiểu.
Tôi hiểu rằng chức năng này là do kendo tạo hai lưới, một cho tiêu đề và một cho nội dung cuộn. Tuy nhiên, các libs điều khiển khác mà tôi đã sử dụng trong quá khứ làm những việc tương tự luôn sao chép thông tin kiểu dáng giữa hai lưới để tạo kiểu dáng trong khi vẫn giữ hai bảng đồng bộ - tôi không chắc chắn về "kendo" cách này là.
HTML từ fiddle
<table>
<thead>
<th class="p20" data-field="status">Status</th>
<th data-field="description">Description</th>
</thead>
</table>
Javascript
$('table').kendoGrid({
dataSource: [
{ status: 'On', description: 'a longer description' },
{ status: 'On', description: 'a longer description' },
{ status: 'On', description: 'a longer description' },
{ status: 'On', description: 'a longer description' },
{ status: 'On', description: 'a longer description' },
{ status: 'On', description: 'a longer description' }
],
scrollable: true
});
CSS
.k-grid-content {
height: 100px;
}
.p20 {
width: 20%;
}
Tuyệt đối, điều này có hiệu quả, nhưng tôi muốn chỉ định chiều rộng của mình trong đánh dấu không phải trong javascript. Việc phải chỉ định mọi chi tiết của mỗi cột cho mỗi lưới là rất khó để thực hiện một nhiệm vụ và đó là địa điểm sai (nói theo ngữ nghĩa) để xác định kiểu dáng. –
Vâng, sau này tôi đã nhận ra bạn đang nói về điều gì, khác với câu hỏi ngày hôm qua. Làm thế nào bạn có kế hoạch để đối phó với lưới nơi chiều rộng văn bản/giá trị lớn hơn 20% của bạn? Bạn luôn hiển thị cùng một dữ liệu trong các cột của mình. Bạn có thể đặt chiều rộng trên tất cả các cột và tiêu đề của bạn như bạn muốn và triển khai dấu ba chấm ("giá trị không đầy đủ của tôi ...") để tránh chênh lệch chiều rộng/đồng bộ hóa. – Vojtiik
Về cơ bản, kendo đặt bố cục bảng thành 'cố định' cho các lưới cuộn được (có thể gây khó chịu khi bắt đầu) với một số cột của chúng ta quá rộng. Chúng tôi có một vài cột chỉ là biểu tượng chỉ báo trạng thái và tôi muốn đặt chúng chỉ rộng vài pixel. Mọi thứ khác có dấu ba chấm và lưới cũng được đặt thành thanh cuộn có thể thay đổi kích thước và xuất hiện nếu cần (xem lưới trên cổng quản lý xanh cho ví dụ về loại chức năng). Đó là hút một sự xấu hổ mà kendo có cách tiếp cận "hai lưới" mà không làm cho sự phức tạp vô hình cho người tiêu dùng –