Salesforce 需要更新选中的员工(自定义)的角色(自定义字段)

Salesforce 需要更新选中的员工(自定义)的角色(自定义字段),salesforce,apex,visualforce,Salesforce,Apex,Visualforce,角色分配给每个员工,每个员工都有一个复选框。每当选中复选框并从下拉列表中选择角色(选择列表中的角色)时,应在单击“更新”按钮后将新角色分配给员工。 我怎么得到它。。我已将ID分配给复选框,并尝试像一样,如果复选框==true则执行某些条件,但它不起作用。请指导我 VF页面 <apex:page extensions="EmployeeSelectClassController13" standardController="Employee__c" sidebar="false">

角色分配给每个员工,每个员工都有一个复选框。每当选中复选框并从下拉列表中选择角色(选择列表中的角色)时,应在单击“更新”按钮后将新角色分配给员工。 我怎么得到它。。我已将ID分配给复选框,并尝试像
一样,如果复选框==true
则执行某些条件,但它不起作用。请指导我

VF页面

<apex:page extensions="EmployeeSelectClassController13" standardController="Employee__c" sidebar="false">
    <apex:form >
        <apex:pageBlock >    
            <apex:pageBlockSection title="Employees" collapsible="false">
                <apex:pageBlockTable value="{!wrapEmployeeList}" var="empWrap" id="table" title="All Employees">
                    <apex:column >
                        <apex:inputCheckbox value="{!empWrap.selected}" id="inputCheckbox"/>
                    </apex:column>
                    <apex:column value="{!empWrap.emp.Name}" id="inputName" />
                    <apex:column value="{!empWrap.emp.Role__c}" id="inputRole" />      
                </apex:pageBlockTable>    
                <apex:pageBlockSection id="InfoId" columns="1" >
                    <apex:selectList size="1" value="{!SelectedValue}">
                        <apex:selectOptions value="{!statusOptions}"/>
                    </apex:selectList>
                </apex:pageBlockSection>
                <apex:commandButton value="Update" id="inputButton" action="{!updateRole}" />
            </apex:pageBlockSection>
        </apex:pageBlock>
    </apex:form> 
</apex:page>

顶点控制器

public class EmployeeSelectClassController13 {
    public List<wrapEmployee> wrapEmployeeList {get; set;}
    public List<Employee__c> empRecord {get;set;}
    public string selectedValue { get;set; }
    public List<SelectOption> statusOptions { get;set; }//TO get Roles from Employee

    public EmployeeSelectClassController13(ApexPages.StandardController controller){
        if(wrapEmployeeList == null){
            wrapEmployeeList = new List<wrapEmployee>();
            for(Employee__c empList:[Select Name,Role__c from Employee__c]){
                wrapEmployeeList.add(new wrapEmployee(empList));
                autorun();
            }
        }
    }
    public class wrapEmployee{
        public Employee__c emp {get; set;}
        public Boolean selected {get; set;}

        public wrapEmployee(Employee__c e) {
            emp = e;
            selected = false;
        }
    }

    //To get all Roles(PickList) from Employee Object
    public void autoRun()
    {

        Schema.DescribeFieldResult statusFieldDescription = Employee__c.Role__c.getDescribe();
        statusOptions = new list<SelectOption>();

        for (Schema.Picklistentry picklistEntry : statusFieldDescription.getPicklistValues())
        {
            statusOptions.add(new SelectOption(pickListEntry.getValue(),pickListEntry.getLabel()));
        }
    }
    public void updateRole()
    {

    }

}
public class EmployeeSelectClassController13{
公共列表wrapEmployeeList{get;set;}
公共列表记录{get;set;}
公共字符串selectedValue{get;set;}
公共列表状态选项{get;set;}//从员工获取角色
公共雇员SelectClassController 13(ApexPages.StandardController){
if(wrapEmployeeList==null){
wrapEmployeeList=新列表();
对于(员工列表:[从员工列表中选择姓名、角色]){
添加(新wrapEmployee(employist));
自动运行();
}
}
}
公共类包装工人{
公共雇员{get;set;}
已选择公共布尔值{get;set;}
公共包装员工(员工){
emp=e;
所选=假;
}
}
//从Employee对象获取所有角色(选取列表)
公共无效自动运行()
{
Schema.descripbeFieldResult statusFieldDescription=Employee__c.Role__c.GetDescripte();
statusOptions=新列表();
对于(Schema.Picklistentry Picklistentry:statusFieldDescription.getPicklistValues())
{
添加(新的SelectOption(pickListEntry.getValue(),pickListEntry.getLabel());
}
}
公共void updateRole()
{
}
}

像这样的东西?在Visualforce中不需要ID,除非您使用JavaScript。这完全可以在Apex中完成

public void updateRole(){
List toUpdate=新列表();
对于(wrapEmployee包装:wrapEmployeeList){
如果(换行选择){
wrap.emp.Role\uuu c=SelectedValue;
//wrap.selected=false;//现在可以选择取消选中复选框吗?
//或者在成功更新后,再次循环通过它们,然后取消锁定
toUpdate.add(wrap.emp);
}
}
更新toUpdate;
}