我想在现有的xPage中添加一个字段,并且需要运行几个xPage基础来检查它们的有效性。
我做了以下事情:
出了什么问题:
有什么建议吗?这是在现有xPage中添加字段时的新手错误吗?
A
根据要求,这里是数据绑定和工作的字段的代码,而不是。
这是我定义 document1 的初始代码。它确实调用代理发布保存,但是此代理对未分配的字段值不执行任何操作。
<xp:this.data>
<xp:dominoDocument var="document1" action="openDocument">
<xp:this.databaseName><![CDATA[#{javascript:var sname = ("","test\\testdb.nsf");
return sname;}]]>
</xp:this.databaseName>
<xp:this.formName><![CDATA[#{javascript:return "MainForm"}]]>
</xp:this.formName>
<xp:this.postSaveDocument>
<xp:executeScript>
<xp:this.script><![CDATA[#{javascript:var sname = @Name([CN]",@Subset(@DbName(),1));
var dbname = "test/testdb.nsf";
var dbTest:NotesDatabase = session.getDatabase(sname, dbname);
if (dbTest.isOpen()){
ag = dbTest.getAgent("UpdateDoc");
noteid = document1.getDocument().getNoteID();
ag.run(noteid);
} }]]></xp:this.script>
</xp:executeScript>
</xp:this.postSaveDocument></xp:dominoDocument>
</xp:this.data>
然后这里是无效的字段分配代码。
<xp:inputText value="#{document1.NewField}"
id="inputText25" disableClientSideValidation="true" styleClass="entryboxes">
</xp:inputText>
然后,这是一个正在运行的字段分配的代码。
<xp:inputText value="#{document1.CLRef}"
id="inputText4" rendered="#{javascript:@IsNewDoc()}" styleClass="entryboxes">
</xp:inputText>
我认为这是相当标准的。
更新8/10
所以 - 我已经知道只有当我有条件地隐藏细胞时才会发生这种情况。这有一个基本公式,根据另一个字段的值要求该行可见。显示/无显示功能正在工作(参见下面的代码),但由于我不知道的原因,它没有保存值。
var hw = getComponent("module");
var hwv = hw2.getSubmittedValue();
hwv == "Product1" || hwv == "Product2" || hw2v == "Product3"
如果我创建任何其他未隐藏的字段(并填写字段名称),它会正确映射到文档(我认为应该如此)。好消息是我已经设法用一个新的表单进行复制,所以看起来我想要有条件地隐藏一行,而不是我的表单的问题?有什么想法吗?
答案 0 :(得分:0)
好的 - 当某些条件下隐藏单元格时,我仍然遇到字段映射问题。因此,我最终使单元格可见,然后仅在某些情况下强制使用该字段。所以,问题不是答案,而是一种解决方法。