こんにちは、管理人の@Salesforce.Zです。
Salesforceの画面を慣れていないユーザの請負をする場合
たまにあるニーズである、編集画面の日付項目の横にある日付リンクを消してほしい
今回、そのやり方を共有します。
読んだら得ること
★ VF画面の日付項目の横の日付リンクを消す(特定項目のみ)
目次
VF画面の日付のよくにあるリンクを消す
問題
標準タグapex:inputfieldは画面上では、右にある現在日付リンクがある
配置上では、スペースも使ってしまうし、そもそも消えてほしいニーズもたまにある、現在日付の入力は便利だけど。
対策
Visualforce componentを用意し、CSSでリンクを消す
コンポーネント名はhideDateLinkとする
<apex:component access="global"> <style> div.hideCurrDate span.dateInput span.dateFormat{ display:none; } </style> <div class="hideCurrDate"> <apex:componentBody /> </div> </apex:component>
使用方法
対象apex:inputfieldの前後に
作成したコンポーネントタグをつける
<apex:page standardController="Contact"> <apex:form> <apex:pageBlock> <apex:pageBlockSection> <c:hideDateLink> <apex:inputField value="{!Contact.Birthdate}"/> </c:hideDateLink> </apex:pageBlockSection></apex:pageBlock> </apex:form>
</apex:page>
最後に
VFのCSSで直接も消すことができるが、全ページに適用してしまうため、コンポーネントを使うことによって、特定の部分のみ消せるです。
ご参考にしてください。