我正在尝试隐藏/显示一个按钮,该按钮位于xpage上,该按钮会停止文档的数量。从viewPanel
。
<xp:this.rendered><![CDATA[#{javascript:var viewPanel=getComponent("viewPanel1");
var docIDArray=viewPanel.getSelectedIds();
if (docIDArray.length != null ){ return true; }
else { return false; }}]]>
</xp:this.rendered>
当我使用列的showCheckbox
属性选择某些文档时,如何为按钮组件进行部分刷新(如果有必要)?
答案 0 :(得分:3)
你不能。与大多数View Panel本身一样,showCheckbox选项提供了对选择文档然后在其上运行函数的有限功能的简单访问。
如果要在单击复选框时触发功能,则需要在单独的列中手动添加CheckBox控件。但是,您还需要创建自己捕获所选文档的功能,例如将该ID添加到viewScope变量,如果它已经存在于viewScope变量中,则将其删除。您还需要根据ID是否在viewScope变量中来计算是否应默认选中每个复选框。如果您将其分解为流程的每个部分需要发生的事情,那么创建它是非常简单的功能。 (在我的XPage体验中,我能够通过SSJS的一些知识很早就重新创建了这种功能。)
答案 1 :(得分:1)
停止使用“查看面板”。使用重复控件。重复控件没有UI。这意味着你几乎可以随心所欲。这里有一个很好的例子:http://notesin9.com/index.php/2011/07/11/notesin9-ee-009-using-java-hashmaps-and-treemaps-with-xpages/
该示例显示如何从重复控件中选择多个文档。所以它与你的实际问题有些接近。