1

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

这些字段位于面板上。该面板之外是一些单选按钮。在onChange单选按钮中,我通过viewScope变量更改面板的渲染属性并部分刷新面板以使其消失。这行得通。我只是希望也能够清空这些字段,否则在用户提交时会保存这些值!

4

3 回答 3

11

SSJS 等价于modifyFieldsimple action 是setValue文档数据源的方法;例如:

currentDocument.setValue("fieldName", null);

如果有人告诉你改为打电话getComponent("someId").setValue(null)......不要。乍一看,这也是可行的,但效率较低、脆弱,并且当目标组件在重复控件中但事件组件在重复之外时不起作用。始终直接更新数据源...绑定到该数据源的任何组件都会自动获取您所做的任何更改。

于 2013-05-23T00:20:29.400 回答
1

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

<xp:modifyField    
var="document1" 
name="FIELDNAME" 
value="">
</xp:modifyField>
于 2013-05-23T00:07:38.423 回答
0

使用客户端 onChange 运行这些 dojo 中的任何一个,其中 < parentID > 是 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(
于 2014-05-07T20:49:50.383 回答