Xpages绑定以重复编辑控件

时间:2013-08-15 17:31:12

标签: xpages

我在理解如何动态绑定到编辑控件时遇到问题。后端来自字段fItem01 fItem02 ... fPD01 fPD02 .. fRQR01 fRQR02 ..我可以获取所有字段的值,但能够为编辑控件定义绑定。

我已经阅读了关于这个主题的所有帖子,但还没弄清楚我做错了什么。 还尝试使用具有绑定属性的自定义控件,但这也不起作用。

感谢您提供任何帮助 鲍勃

<xp:this.data>
    <xp:dominoView var="view1" viewName="vwMultItem"></xp:dominoView>
</xp:this.data>
<xp:table border="1">
    <xp:tr>
        <xp:td>
            <xp:label value="Title" id="label1"></xp:label>
        </xp:td>
        <!--<xp:td></xp:td>-->
    </xp:tr>
    <xp:repeat id="repeat1" rows="1" value="#{view1}" var="row">
        <xp:panel id="panelDocData">
            <xp:this.data>
                <xp:dominoDocument var="document1"
                    formName="frMultItem" action="editDocument"
                    documentId="#{javascript:row.getNoteID();}">
                </xp:dominoDocument>
            </xp:this.data>
            <xp:repeat id="repeat2" rows="3" var="rowItem" first="0"
                indexVar="indexVar">
                <xp:this.value><![CDATA[#{javascript:new Array("01", "02", "03")}]]></xp:this.value>    
                <xp:tr>
                    <xp:repeat id="repeat3" first="0" rows="2"
                        var="rowName">
                        <xp:this.value><![CDATA[#{javascript:new Array("fItem","fPD")}]]></xp:this.value>
                        <xp:td>
                            <xp:text escape="true" id="computedField1">
                                <xp:this.value><![CDATA[#{javascript:document1.getItemValueString(rowName+rowItem);
                                }]]></xp:this.value> </xp:text>                         
                        </xp:td>
                    </xp:repeat>
                        <xp:td>
                            <xp:inputText id="inputText1"
                                value="#{javascript:'#{document1.fRQR'+'01'+'}'}">
                            </xp:inputText></xp:td>
                </xp:tr>
            </xp:repeat>
        </xp:panel>
    </xp:repeat>
</xp:table>

1 个答案:

答案 0 :(得分:1)

如果您知道要将哪些字段放入重复控件中,则可以使用

完全计算内部重复块中的fieldName s

javascript:["fItem"+rowItem,"fPD"+rowItem,"fRQR"+rowItem]

然后在编辑控件的值EL #{document1[fieldName]}中使用它们。

<xp:repeat
    id="repeat2"
    var="rowItem"
    indexVar="indexVar">
    <xp:this.value><![CDATA[#{javascript:["01", "02", "03"]}]]></xp:this.value>
    <xp:tr>
        <xp:repeat
            id="repeat3"
            var="fieldName">
            <xp:this.value><![CDATA[#{javascript:["fItem"+rowItem,"fPD"+rowItem,"fRQR"+rowItem]}]]></xp:this.value>
            <xp:td>
                <xp:inputText
                    id="inputText2"
                    value="#{document1[fieldName]}">
                </xp:inputText>
            </xp:td>
        </xp:repeat>
    </xp:tr>
</xp:repeat>