初始加载期间无法使用Freemarker条件隐藏列

时间:2017-12-27 09:18:34

标签: json datatables freemarker

我需要在DataTable中显示使用JQuery填充的默认列。我有一个条件,如果json数据的计算结果为<#list caseMgrConfiguration.columns as column> <#if column?counter <= 11> { data: "${column.label}", <#if column.Userselectable?? && column.Userselectable.intiallyHidden??> style="display:none" </#if> render: function (data, type, row) { return "<a href='/platform/${registry}/facility${facilityId}/case-report-form?patient_id=" + row.patientId + "&record_id=" + row.recordId + "'>" + data + "</a>"; } }, </#if> ,那么应该隐藏分配了json数据的列。我尝试了以下方法,但它没有用:

initiallyHidden

我真正想要的是根据来自casemgr.json文件的json值{{1}}显示或隐藏css。它不是抛出错误,但它也不是隐藏列。有人可以指导我如何做到这一点吗?

1 个答案:

答案 0 :(得分:0)

问题在于foo??测试foo是否存在(非null),而不是truefalse。因此,即使foofalsefoo??也为true。如果你有理由相信变量(foo)缺失(但是否则它是布尔值),并且在这种情况下你想要处理为false,那么写{{1 }}。如果您知道它始终存在,那么只需编写foo!false(如在foo中),就不需要其他运算符。