的XPage:
<xp:div styleClass="container" style="margin-top:20px">
<xp:div styleClass="row">
<xc:cc1></xc:cc1>
<xc:cc2></xc:cc2>
</xp:div>
</xp:div>
自定义控件1
<xp:this.data>
<xp:dominoDocument var="form1" formName="form1"></xp:dominoDocument>
</xp:this.data>
<xp:div id="formDiv1" styleClass="col-sm-4">
<xp:form>
<xp:label value="Form 1" styleClass="h3"></xp:label>
<xp:div styleClass="form-group">
<xp:label value="Field 1" styleClass="control-label"></xp:label>
<xp:inputText value="#{form1.field1}"></xp:inputText>
</xp:div>
<xp:button value="Submit Form1" id="form1Btn">
<xp:eventHandler event="onclick" submit="true" refreshMode="partial" immediate="false" save="true" refreshId="formDiv1"
execMode="partial" execId="formDiv1">
</xp:eventHandler>
</xp:button>
</xp:form>
自定义控件2
<xp:this.data>
<xp:dominoDocument var="form2" formName="form2"></xp:dominoDocument>
</xp:this.data>
<xp:div id="formDiv1" styleClass="col-sm-4">
<xp:form>
<xp:label value="Form 2" styleClass="h3"></xp:label>
<xp:div styleClass="form-group">
<xp:label value="Field 1" styleClass="control-label"></xp:label>
<xp:inputText value="#{form2.field1}"></xp:inputText>
</xp:div>
<xp:button value="Submit Form2" id="form2Btn">
<xp:eventHandler event="onclick" submit="true" refreshMode="partial" immediate="false" save="true" refreshId="formDiv1"
execMode="partial" execId="formDiv1">
</xp:eventHandler>
</xp:button>
</xp:form>
答案 0 :(得分:3)
普通提交按钮获取属性save="true"
并保存所有数据源。
如果您只想保存一个数据源,请使用简单操作Save Document
并选择数据源:
另外设置属性save="false"
。您的按钮代码如下所示:
<xp:button
id="form1Btn"
value="Submit Form1">
<xp:eventHandler
event="onclick"
submit="true"
refreshMode="complete"
immediate="false"
save="false">
<xp:this.action>
<xp:saveDocument
var="form1"></xp:saveDocument>
</xp:this.action>
</xp:eventHandler>
</xp:button>
答案 1 :(得分:2)
以下是使用Knut建议的代码:
XPAGE
<table>
<tr>
<td>Photo</td>
<td style="text-align: center"><img src="<?php echo base_url() ?>uploads/volunteer/<?php echo $file_name; ?>" height="100" width="150"></td>
</tr>
</table>
CC1
<xp:div styleClass="container" style="margin-top:20px">
<xp:div styleClass="row">
<xc:cc1></xc:cc1>
<xc:cc2></xc:cc2>
</xp:div>
</xp:div>
CC2
<xp:panel id="formDiv1" styleClass="col-sm-4">
<xp:this.data>
<xp:dominoDocument var="form1" formName="form1"></xp:dominoDocument>
</xp:this.data>
<xp:label value="Form 1" styleClass="h3"></xp:label>
<xp:div styleClass="form-group">
<xp:label value="Field 1" styleClass="control-label"></xp:label>
<xp:inputText id="field1" value="#{form1.field1}"></xp:inputText>
</xp:div>
<xp:button value="Save" id="form1Btn">
<xp:eventHandler event="onclick" submit="true" refreshMode="partial" immediate="false" save="false" execMode="partial"
execId="formDiv1" refreshId="formDiv1">
<xp:this.action>
<xp:actionGroup>
<xp:saveDocument var="form1"></xp:saveDocument>
<xp:executeScript>
<xp:this.script><![CDATA[#{javascript:
var panel = getComponent("formDiv1");
var ds = new com.ibm.xsp.model.domino.DominoDocumentData();
ds.setComponent(panel);
ds.setVar("form1");
ds.setFormName("form1");
panel.getData().clear();
panel.addData(ds);}]]></xp:this.script>
</xp:executeScript>
</xp:actionGroup>
</xp:this.action>
</xp:eventHandler>
</xp:button>
</xp:panel>
答案 2 :(得分:2)
Paul Wither关于在数据源中使用requestScope作用域的建议使得代码更加简单:
XPage
<xp:div styleClass="container" style="margin-top:20px">
<xp:div styleClass="row">
<xc:cc1></xc:cc1>
<xc:cc2></xc:cc2>
</xp:div>
自定义控件1
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:this.data>
<xp:dominoDocument var="form1" formName="form1" scope="request"></xp:dominoDocument>
</xp:this.data>
<xp:div id="formDiv1" styleClass="col-sm-4">
<xp:label value="Form 1" styleClass="h3"></xp:label>
<xp:div styleClass="form-group">
<xp:label value="Field 1" styleClass="control-label"></xp:label>
<xp:inputText id="field1" value="#{form1.field1}"></xp:inputText>
</xp:div>
<xp:button value="Save" id="form1Btn">
<xp:eventHandler event="onclick" submit="true" refreshMode="partial" immediate="false" save="false" execMode="partial" execId="formDiv1"
refreshId="formDiv1">
<xp:this.action>
<xp:actionGroup>
<xp:saveDocument var="form1"></xp:saveDocument>
</xp:actionGroup>
</xp:this.action>
<xp:this.onComplete><![CDATA[x$("#{id:field1}").val("");]]></xp:this.onComplete>
</xp:eventHandler>
</xp:button>
</xp:div>
</xp:view>
自定义控件2
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:this.data>
<xp:dominoDocument var="form2" formName="form2" scope="request"></xp:dominoDocument>
</xp:this.data>
<xp:div id="formDiv2" styleClass="col-sm-4 ">
<xp:label value="Form 2" styleClass="h3"></xp:label>
<xp:div styleClass="form-group">
<xp:label value="Field 1" styleClass="control-label"></xp:label>
<xp:inputText id="field1" value="#{form2.field1}">
</xp:inputText>
</xp:div>
<xp:button value="Submit Form2" id="form2Btn">
<xp:eventHandler event="onclick" submit="true" refreshMode="partial" immediate="false" save="false" execMode="partial"
execId="formDiv2" refreshId="formDiv2">
<xp:this.action>
<xp:actionGroup>
<xp:saveDocument var="form2"></xp:saveDocument>
</xp:actionGroup>
</xp:this.action>
<xp:this.onComplete><![CDATA[x$("#{id:field1}").val("");]]></xp:this.onComplete>
</xp:eventHandler>
</xp:button>
</xp:div>
</xp:view>