从重复内部传递inputText值

时间:2015-02-09 12:34:29

标签: salesforce visualforce

我在salesforce中有一个对象,我想根据有多少相关列表对象创建一个表单来输入值。由于我不知道有多少相关列表对象,我想尝试在页面上使用重复。

<apex:repeat value="{!prompts}" var="pmpt">
  <div>
    <label>{!pmpt.Name}</label>
    <div>
      <apex:inputText value="{!pmpt.DefaultValue__c}"/>
    </div>
  </div>
</apex:repeat>

因此上面的代码从控制器获取相关列表记录(提示)列表,并显示标签和分配给它的inputText值,并显示默认值。这很好但我不知道当用户从默认值中更改这些值时,如何在控制器中读取这些值。感谢。

1 个答案:

答案 0 :(得分:0)

最简单的方法是在Controller中分配一个变量而不是

<apex:inputText value="{!pmpt.DefaultValue__c}"/>

它将是

<apex:inputText value="{!Your_Controller_Variable}"/>

这样,当您提交表单时,输入字段中的值将被分配给控制器中的变量,然后您可以使用它们执行任何所需的过程

现在,由于您有重复... 并且每个输入都与不同的记录相关,您可以做的是将 inputText 更改为 inputField ,然后添加一个按钮在页面上提交表单..这将显示每个对象字段的当前值,并且..将更新列表中的记录(您在重复中使用的记录)。喜欢这样:

<apex:inputField value="{!pmpt.DefaultValue__c}"/>

当您提交表单时,inputField会自动将值分配给相应的记录字段。