gpt4 book ai didi

xpages 将值设置为重复字段中的字段

转载 作者:行者123 更新时间:2023-12-02 07:27:19 24 4
gpt4 key购买 nike

我正在尝试从重复控件上的字段为字段(不在重复控件内)设置值。

重复字段:

<xp:inputText id="inputText2" disabled="true">
<xp:this.value><![CDATA[#{viewScope.field_2[index]}]]></xp:this.value>
<xp:eventHandler event="onchange" submit="true"
refreshMode="partial" refreshId="sus">
<xp:this.action><![CDATA[#{javascript:getComponent("inputText4").setValue("1234");}]]></xp:this.action>
</xp:eventHandler>
</xp:inputText>

正如您所注意到的,目标字段位于面板内,id="sus"。

目标字段也绑定(bind)到表单字段。

但未分配任何值。我怎样才能实现这个目标?

最佳答案

组件只是背后数据模型的可视化。始终绑定(bind)您的控件并跟踪模型值,而不是组件。禁用的 inputText 无法触发值,并且在上面的代码片段中您有 disabled="true"。 onchange 事件无法触发。

这会起作用:

<xp:inputText id="inputText2" disabled="false">
<xp:this.value><![CDATA[#{viewScope.field_2[index]}]]></xp:this.value>
<xp:eventHandler event="onchange" submit="true"
refreshMode="partial" refreshId="sus">
<xp:this.action><![CDATA[#{javascript:viewScope.someValue=42;}]]></xp:this.action>
</xp:eventHandler>
</xp:inputText>

您的目标控件将如下所示:

<xp:inputText id="inputText4" value="#{viewScope.someValue}">
</xp:inputText>

如果您的目标控件绑定(bind)到其他内容(例如 #{document1.test}),则您的代码需要更新该控件。 (document1.replaceItemValue("test",42))

再次强调 3 个重要方面:

  1. 永远不要追求 UI 元素,始终更新后面的绑定(bind)模型(又名:与数据对话,而不是 UI 也称为: Controller 更新模型,而不是 View )
  2. 确保您的目标属于刷新字段的一部分
  3. 禁用字段不会触发事件

让我们知道进展如何

关于xpages 将值设置为重复字段中的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26211032/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com