У меня есть пара apex:pageBlockSectionItem
<apex:pageBlockSectionItem helpText="{!$ObjectType.Opportunity.fields.TextField__c.InlineHelpText}"
dataStyleClass="myCSS" labelStyleClass="myCSS"
>
<apex:outputLabel value="{!$ObjectType.Opportunity.fields.TextField__c.Label}"/>
<apex:inputField value="{!opp.TextField__c}" taborderhint="2" styleClass="myCSS" />
</apex:pageBlockSectionItem>на страничке. Они идентичны, за исключением helpText аттрибутов, inputField значений и taborderhint. Я хотел все это засунуть в apex:component, но не нахожу, как справиться с apex:inputField. Как мне засунуть поле для редактирования в value в apex:inputField? У полей будут разные типы и я не вижу как передать значение поля, если типы будут разными.
когда появляется новый вопрос, обычно сначала отписывается Wilder с вариантом решения.
потом появляется Gres и объявляет, что это решение не будет работать в данном случае.
Затем приходит Илья "и молча все поправляет".
И в конце Дмитрий рассказывает интересную историю из жизни как раз по этой теме.
так и живем...
и всем спасибо
![]()
Den, молодец, очень верно подметил.
<apex:pageBlockSectionItem helpText="{!$ObjectType.Opportunity.fields.TextField__c.InlineHelpText}"
dataStyleClass="myCSS" labelStyleClass="myCSS"
>
<apex:outputLabel value="{!$ObjectType.Opportunity.fields.TextField__c.Label}"/>
<apex:inputField value="{!opp.TextField__c}" taborderhint="2" styleClass="myCSS" />
</apex:pageBlockSectionItem>на страничке. Они идентичны, за исключением helpText аттрибутов, inputField значений и taborderhint. Я хотел все это засунуть в apex:component, но не нахожу, как справиться с apex:inputField. Как мне засунуть поле для редактирования в value в apex:inputField? У полей будут разные типы и я не вижу как передать значение поля, если типы будут разными.
Не уверен что сработает, но навскидку попробуйте использовать Visualforce Dynamic Binding, т.е. должно получиться что-то вроде
<apex:inputField value="{!opp[fieldName]}"/>Для этого может понадобиться ещё и сам sObject в компоненту пробрасывать.