File upload xpages fileupload控件无法在重复控件中删除

File upload xpages fileupload控件无法在重复控件中删除,file-upload,xpages,File Upload,Xpages,我正在与一种奇怪的效果作斗争: 在repeat控件中,我有一个带有fileupload和-download控件的自定义控件。项目名称是使用repeat的行变量计算的,因此我可以为notes文档生成“动态字段”。 工作正常(上传单独显示并保存在不同的richtext项目中),除了文件删除按钮:它只能删除“我的重复”的最后一个文件下载控件中的文件。据我所知:其他文件下载的delete按钮尝试从repeat中的最后一个项目名称中删除文件,而不是从相应的项目名称中删除文件 以下是我的示例代码(此帖子简化

我正在与一种奇怪的效果作斗争: 在repeat控件中,我有一个带有fileupload和-download控件的自定义控件。项目名称是使用repeat的行变量计算的,因此我可以为notes文档生成“动态字段”。 工作正常(上传单独显示并保存在不同的richtext项目中),除了文件删除按钮:它只能删除“我的重复”的最后一个文件下载控件中的文件。据我所知:其他文件下载的delete按钮尝试从repeat中的最后一个项目名称中删除文件,而不是从相应的项目名称中删除文件

以下是我的示例代码(此帖子简化):

xpage:

<xp:view xmlns:xp="http://www.ibm.com/xsp/core"
    xmlns:xc="http://www.ibm.com/xsp/custom">

    <xp:this.data>
        <xp:dominoDocument var="test" formName="answers"></xp:dominoDocument>
    </xp:this.data>

    <xp:repeat id="repeat1" rows="30" var="r">
        <xp:this.value><![CDATA[#{javascript:var atts = new Array();
            atts.push("att1");
            atts.push("att2");
            atts.push("att3");
            return atts}]]></xp:this.value>
        <xc:ccdummy fname="#{javascript:r}"></xc:ccdummy>
    </xp:repeat>


    <xp:button value="Save" id="button1"><xp:eventHandler event="onclick" submit="true" refreshMode="complete" immediate="false" save="true">
    <xp:this.action>
        <xp:saveDocument var="test"></xp:saveDocument>
    </xp:this.action></xp:eventHandler></xp:button>
    </xp:view>

自定义控件:

<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
    <xp:panel id="ccpanel">
        <xp:fileUpload id="fileUpload1">
            <xp:this.value><![CDATA[#{test[compositeData.fname]}]]></xp:this.value>
            <xp:eventHandler event="onchange" submit="true"
                refreshMode="partial" disableValidators="true" refreshId="ccpanel">
            </xp:eventHandler>
            <xp:eventHandler event="onclick" submit="true"
                refreshMode="norefresh">
            </xp:eventHandler></xp:fileUpload>
        <xp:fileDownload rows="30" id="fileDownload1"
            displayLastModified="false" hideWhen="true"
            allowDelete="true">
            <xp:this.value><![CDATA[#{test[compositeData.fname]}]]></xp:this.value><xp:eventHandler event="onclick" submit="true"
                refreshMode="norefresh">
            </xp:eventHandler>
        </xp:fileDownload>
    </xp:panel></xp:view>

向重复控制添加选项
repeatControls=“true”

它确保repeat控件中的每个嵌入式自定义控件都是单独创建的,并且独立运行

我用你的例子进行了测试:

  • repeatControls=“false”
    :只能使用上次下载控件中的附件 删除
  • repeatControls=“true”
    :可以删除所有下载控件中的附件