2012-05-16 43 views
7

Tôi không tìm thấy bất kỳ cách nào để áp dụng chiều rộng cột trong flexigrid theo tỷ lệ phần trăm.
tôi đã đưa độ dài tuyệt đối như sau:
Muốn kéo dài cột cuối cùng trong Flexigrid

colModel : [ 
    {display:'ISO', width:50}, 
    {display:'Name', width:300}, 
    {display:'Printable Name', width:200}, 
    {display:'ISO3', width:200}, 
    {display:'Number Code', width:100}, 
], 

Vì vậy, những gì đang xảy ra là, khi tôi thay đổi kích thước các cột cuối cùng có một khoảng trắng phía bên phải của nó. Vui lòng tham khảo ảnh chụp màn hình.

enter image description here

Có cách nào để làm cho cột cuối cùng chiếm không gian còn lại và phần còn lại của các cột tuyệt đối. Tính năng này đã được thực hiện trong Flex trong ứng dụng của chúng tôi và không có cách nào tôi có thể biết nó được thực hiện như thế nào.

Trả lời

8

Hiya bản demohttp://jsfiddle.net/GNqZn/1/showhttp://jsfiddle.net/GNqZn/1/

có lẽ bạn cần phải viết một chức năng tùy chỉnh như thế này tôi đã viết cho trường hợp cụ thể này trong bản demo trên:

Trong bản demo trên xem bảng tôi đã 700 width and 4 columns before number code hence 700/4

Đọc tại đây: http://groups.google.com/group/flexigrid/browse_thread/thread/3da4473a5f467cea

Hy vọng điều này sẽ giúp bạn đi đúng hướng và bản demo sẽ giúp bạn chơi xung quanh. chúc mừng!

D'uh đây không phải là viên đạn bạc nhưng bạn có thể làm cho nó bằng cách tinh chỉnh cho nhu cầu cụ thể của bạn. :)

CẬP NHẬT 05 Tháng sáu Để cung cấp cho OP một bản demo đơn giản: http://jsfiddle.net/2TkyR/22/hayhttp://jsfiddle.net/gaNZR/11hayhttp://jsfiddle.net/gaNZR/11/show/

Nếu tôi có thể khuyên bạn nên nó là rất quan trọng nếu bạn đọc thêm chút thông tin về các plugin, chơi xung quanh một bạn sẽ cảm thấy tự tin hơn.

Vui lòng xem hình ảnh được đính kèm bên dưới Tất cả những gì bạn cần làm là thêm chức năng tùy chỉnh này theo nhu cầu của bạn.

Hãy đọc này: http://flexigrid.info/ và một số hướng dẫn tốt & này: http://www.kenthouse.com/blog/2009/07/fun-with-flexigrids/

Jquery đang

function GetColumnSize(percent){ 
    screen_res = (700/4)*0.95; // 700 is the width of table; 
    col = parseInt((percent*(screen_res/100))); 
    if (percent != 100){ 
     // alert('foo= ' + col-18); 
     return col-18; 
    }else{ 
     // alert(col); 
     return col; 
    } 
} 

gọi nó như thế nàywidth : GetColumnSize(100),

$("#flex1").flexigrid({ 
     url: 'post2.php', 
     dataType: 'json', 
     colModel : [ 
      {display: 'ISO', name : 'iso', width : 40, sortable : true, align: 'center'}, 
      {display: 'Name', name : 'name', width : 180, sortable : true, align: 'left'}, 
      {display: 'Printable Name', name : 'printable_name', width : 120, sortable : true, align: 'left'}, 
      {display: 'ISO3', name : 'iso3', width : 130, sortable : true, align: 'left', hide: true}, 
      {display: 'Number Code', name : 'numcode', width : GetColumnSize(100), sortable : true, align: 'right'} 
      ], 

2 hình ảnh dưới đây

Hình ảnh 1 enter image description here

Hình ảnh 2 enter image description here

+0

nó không phải là chính xác. – Ashwin

+1

Hiya @MotaBOS Yep nếu bạn đọc câu trả lời của tôi - Tôi đã đề cập đến sự giúp đỡ của bạn và cho bạn một khởi đầu tốt; không phải là một viên đạn bạc nhưng tôi sẽ thấy nếu tôi có thể đọc câu hỏi của bạn và giúp đỡ thêm, –

+0

Cảm ơn câu trả lời. Nhưng tôi không hiểu 2 câu đố là gì. Bạn có thể giải thích rằng sau khi chúng tôi đặt giá trị trong biểu mẫu như thế nào chúng ta có thể thấy biểu mẫu. Hoặc là nó không làm việc trong fiddle này và tôi sẽ phải thực hiện trong dự án. – Ashwin

Các vấn đề liên quan