我没有找到任何方法在百分比方面在flexigrid中应用列宽
我给出了如下绝对长度:
colModel : [
{display:'ISO', width:50},
{display:'Name', width:300},
{display:'Printable Name', width:200},
{display:'ISO3', width:200},
{display:'Number Code', width:100},
],
所以发生的事情是,当我调整最后一列时,右侧有一个空白区域。请参阅截图。
有没有办法让最后一列占据剩余的空间,其余的列绝对。此功能已在我们的应用程序中的Flex中实现,我无法知道它是如何完成的。
答案 0 :(得分:8)
Hiya 演示 http://jsfiddle.net/GNqZn/1/show 和 http://jsfiddle.net/GNqZn/1/
你可能需要编写一个自定义函数,就像我在上面的演示中针对这个特定情况所写的那样:
在上面的演示中,我的表格视图有700 width and 4 columns before number code hence 700/4
请在此处阅读:http://groups.google.com/group/flexigrid/browse_thread/thread/3da4473a5f467cea
希望这能帮助您朝着正确的方向前进,演示将帮助您畅玩。干杯!
呃,这不是灵丹妙药,但你可以通过调整来满足你的特殊需要。 :)
6月5日更新为OP提供一个简单的演示:http://jsfiddle.net/2TkyR/22/ 或 http://jsfiddle.net/gaNZR/11 或 {{3} }
如果我可以推荐它,如果你阅读更多关于插件的内容是至关重要的,那么玩一下就会感觉更自信。
请参阅下面附带的图片您需要做的就是根据需要添加此自定义功能。
请阅读此内容:http://jsfiddle.net/gaNZR/11/show/以及一些很好的教程&这个:http://flexigrid.info/
Jquery代码
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;
}
}
称之为 width : 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张图片
图片1
图片2