Richfaces 4.x extendedDataTableでは、cssスタイルを使用して、同じ時間にその列のヘッダーと本文の両方を制御できます。各列のCSSスタイルは、接頭辞「.rf-edt-c-」と列IDで作成されます。 IDが "column1"の列がある場合、CSSスタイルは ".rf-edt-c-column1"になります。以下は、Java Scriptの列idを持つ列を表示/非表示する例です。
<script type="text/javascript">
//<![CDATA[
function hideColumn(columnId)
{
var styleSheets = document.styleSheets;
for(var i=0;i<styleSheets.length;i++)
{
var rules = null;
// IE and Chrome
if(styleSheets[i].rules != null)
{
rules = styleSheets[i].rules;
}
// Firefox
else if(styleSheets[i].cssRules != null)
{
rules = styleSheets[i].cssRules;
}
for(var j=0;j<rules.length;j++)
{
// Find the css style of that column
if(rules[j].selectorText==".rf-edt-c-" + columnId)
{
rules[j].style.display = "none";
}
}
}
}
function showColumn(columnId)
{
var styleSheets = document.styleSheets;
for(var i=0;i<styleSheets.length;i++)
{
var rules = null;
// IE and Chrome
if(styleSheets[i].rules != null)
{
rules = styleSheets[i].rules;
}
// Firefox
else if(styleSheets[i].cssRules != null)
{
rules = styleSheets[i].cssRules;
}
for(var j=0;j<rules.length;j++)
{
// Find the css style of that column
if(rules[j].selectorText==".rf-edt-c-" + columnId)
{
rules[j].style.display = "";
}
}
}
}
//]]>
</script>
私はそれを行う方法についてはあまりよく分かりません。しかし、この目的のためにJQueryを試してみてください。私はJQueryで自分の手を試しています。クラスまたはdivを定義してから、このクラスまたはdivを非表示にする... jqueryを使用して同じことを達成できるかどうかはわかりませんが、確かに試してみてください... – AngelsandDemons