XPages - 当存在必填字段时,字段更新不起作用

时间:2014-01-21 08:09:38

标签: javascript ajax xpages lotus-notes

我正在使用部分刷新更新字段,除非存在必填字段,否则工作正常。然后更新根本不起作用。有谁能解释为什么?这是我的代码。

<xp:panel rendered="true">
    <xp:table>

        <xp:tr>
            <xp:td>My Value:</xp:td>
            <xp:td>
                <xp:inputText id="ValueField"
                    value="#{document1.ValueField}">
                </xp:inputText>
            </xp:td>
        </xp:tr>
        <xp:tr>
            <xp:td>Required Field:&#160;</xp:td>
            <xp:td>
                <xp:inputText id="inputText1" required="true"></xp:inputText></xp:td>
        </xp:tr>
    </xp:table>
</xp:panel>

<xp:panel rendered="true">
    <xp:table>
        <xp:tr>
            <xp:td>
                <xp:button id="button3" value="Set Value">
                    <xp:eventHandler event="onclick" submit="true"
                        refreshMode="partial" refreshId="ValueField">
                        <xp:this.action><![CDATA[#{javascript:document1.setValue("ValueField","12345")}]]></xp:this.action>
                    </xp:eventHandler>
                </xp:button>
            </xp:td>
        </xp:tr>
    </xp:table>
</xp:panel>

如果inputText1的required属性设置为false,则更新正常。

此问题类似于我之前的查询,但为了清楚起见,我决定单独发布。

1 个答案:

答案 0 :(得分:5)

解决此问题的方法是在事件选项卡上选中“未经验证处理数据”框

如果您执行完全刷新或部分刷新,则在JSF生命周期中处理验证阶段,这就是没有更新字段的原因。