0

我有一个编辑器组件,显示选定的家庭(来自树)描述

所以在编辑它之后,用户点击那里的保存按钮我想使用它

 <f:setPropertyActionListener  target="#
            {projectTestManagementMB.selectedNodeDescription}" 
             value="projectTestManagementMB.selectedFamily.description" />

将描述的新值传递给该变量 selectedNodeDescription 。但是当我检查它时,我发现它包含旧值projectTestManagementMB.selectedFamily.description而不是新值。

这是代码:

<p:editor id="familyDescriptionEditor" value="#
     {projectTestManagementMB.selectedFamily.description}" width="600"/>  

      <p:commandButton id="submitButton" value="Save"   icon="ui-icon-disk"  
       actionListener="#{projectTestManagementMB.saveDescription}">
          <f:setPropertyActionListener  target="#
            {projectTestManagementMB.selectedNodeDescription}" 
             value="projectTestManagementMB.selectedFamily.description" />

      </p:commandButton>  
4

1 回答 1

1

此标签创建和安装的 ActionListener 实例具有以下行为和约定。仅在第一次创建此标记的组件时创建和注册 ActionListener 实例。

所以尝试使用 action 属性而不是 actionListener :

   <p:commandButton id="submitButton" value="Save"   icon="ui-icon-disk"  action="#   
        {projectTestManagementMB.saveDescription}" >
          <f:setPropertyActionListener  target="#
         {projectTestManagementMB.selectedNodeDescription}" value="#
          {projectTestManagementMB.selectedFamily.description}" />
    </p:commandButton>  
于 2012-09-30T09:43:33.637 回答