清除Xpage上的字段?

时间:2013-05-22 23:14:16

标签: xpages

在XPage上,如何在按下某个单选按钮时清除某些字段?

字段位于面板上。在该面板之外是一些单选按钮。在单选按钮的onChange中,我通过viewScope变量更改面板的render属性,并对面板进行部分刷新以使其消失。这有效。我只是想也能够删除字段,否则在用户提交时保存值!

3 个答案:

答案 0 :(得分:11)

modifyField简单操作的SSJS等价物是文档数据源的setValue方法;例如:

currentDocument.setValue("fieldName", null);

如果有人告诉您,请拨打getComponent("someId").setValue(null) ...不要。乍一看,这也有效,但它效率低,易碎,并且当目标组件处于重复控制但事件组件在重复之外时不起作用。始终直接更新数据源...绑定到该数据源的任何组件都将自动获取您所做的任何更改。

答案 1 :(得分:1)

添加一个事件,该事件将修改onchange事件中的字段并刷新您要更改的区域。

<xp:modifyField    
var="document1" 
name="FIELDNAME" 
value="">
</xp:modifyField>

答案 2 :(得分:0)

使用客户端onChange运行这些dojo中的任何一个,其中&lt; parentID &gt;是RadioButton或RadioGroup所在容器的id:

dojo.query("*[type=radio]:checked",dojo.byId(parentID)).forEach(function(node, index, nodelist){
            node.checked=false;
        });
dojo.query("*[type=checkbox]:checked",dojo.byId(parentID)).forEach(function(node, index, nodelist){
            node.checked=false;
        });
dojo.query("input",parentID).
    forEach(function(node, index, nodelist){
        node.value = "";
    })
//reset(