Salesforce
Visualforce

【SalesForce】標準項目の横のドロップダウンを消す

こんにちは。
わたちゃんと申します。

今回はSalesForceのVisualForceによるカスタム画面作成についての小メモとなります。

カスタム画面を作成している時、ユーザの標準項目の横にドロップダウンが出ることがあります。
これを消すための記述として、以下の書き方で項目の間に書いてしまえば見えなくなります。

<apex:inputField id="testValues" value="{!Columns.test1__c}" >
  <script type="text/javascript" language="javascript">
    document.getElementById('testPage:testForm:testPageBlock:testValues_mlktp').style.display = "none";
  </script>
</apex:inputField>

手順としましては

1.Chrome、FireFoxの開発者モード等で対象の項目のIDを探索・取得します。

2.document.getElementById()に取得したIDをセットします(mlktpとは非表示の対象となる項目IDです)。

3.非表示を行う要素として、style.displayにnoneを設定します。

4.対象項目の中にjavaScriptを埋め込む。

上や下に対象の記述をすると、ページ読み込み時に要素がない、と怒られるので、項目の要素を定義したあと、つまり項目の中側に書いたほうがいいのです。