gpt4 book ai didi

javascript - 隐藏 Flexigrid 中的列

转载 作者:行者123 更新时间:2023-12-02 19:42:02 25 4
gpt4 key购买 nike

有没有办法像这样隐藏和显示 jQuery Flexigrid 中的列?

$('#FlexigridID').hideCol('ColumnName');
$('#FlexigridID').showCol('ColumnName');

最佳答案

测试的新代码:

$(function () {


var visible = true;
$('#yo').click(function () {
alert('hello');

visible = !visible;
showColumn('#yourFlexigridNameHere', 'Lastname', visible);
});

});


// you can put this in a separate javascript library
function showColumn(tbl, columnName, visible) {

var grd = $(tbl).closest('.flexigrid');
var colHeader = $('th[abbr=' + columnName + ']', grd);
var colIndex = $(colHeader).attr('axis').replace(/col/, "");


// queryVisible = $(colHeader).is(':visible');
// alert(queryVisible);

$(colHeader).toggle(visible);

$('tbody tr', grd).each(
function () {
$('td:eq(' + colIndex + ')', this).toggle(visible);
}
);

}

HTML:

<input id='yo' type="button" />
<小时/>

您还可以在 Flexigrid 的 colModel 设置中将隐藏设置为 false:

colModel: [
{display: 'Row ID', name : 'Lastname', width : 100,
sortable : true, align: 'left', hide: false}
<小时/>

您还可以添加针对 Flexigrid 的方法,您可以将其放入单独的 javascript 库中:

(function ($) {

$.fn.showColumn = function (columnName, visible) {

if (visible == undefined) visible = true;

var grd = this.closest('.flexigrid');
var colHeader = $('th[abbr=' + columnName + ']', grd);
var colIndex = $(colHeader).attr('axis').replace(/col/, "");

$(colHeader).toggle(visible);

$('tbody tr', grd).each(
function () {
$('td:eq(' + colIndex + ')', this).toggle(visible);
}
);
};

$.fn.hideColumn = function (columnName) {
this.showColumn(columnName, false);
}

})(jQuery);

您现在可以使用这些调用隐藏和显示:

$('#FlexigridID').hideColumn('ColumnName');
$('#FlexigridID').showColumn('ColumnName');


visible = !visible; // for toggling need
$('#FlexigridID').showColumn('ColumnName', visible);

关于javascript - 隐藏 Flexigrid 中的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10278834/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com