+ Start a Discussion
TOM*TOM* 

日付項目のカレンダー

いつもお世話になっております。
本日お伺いしたい事は、日付項目のテキストボックスの横に表示されるカレンダーを独自で、HTMLで作成したテキストボックスの隣りに作成したいと考えているのですが可能でしょうか?

分かられる方がいらっしゃいましたら、アドバイスお願い致します。

Best Answer chosen by Admin (Salesforce Developers) 
takahiro-yoneitakahiro-yonei

※もうすでに別の方法で実現されてるかもしれませんが・・

例えば、こんな感じでしょうか?

 

<apex:inputText value="{!xxxx}" style="width:80px" id="xxxDate" onfocus="DatePicker.pickDate(true, '{!$Component.xxxDate}', false)"/>

Salesforce側で用意しているjavascriptにあるDatePicker.pickDateメソッドを利用すれば、日付項目以外でもカレンダーを表示させることができます。

上記の例では、apex:inputTextタグを利用してますが、inputタグでもidを指定すれば特に問題なく利用できるかと思います。

 

意図を取り違えてましたらすみません。

All Answers

takahiro-yoneitakahiro-yonei

※もうすでに別の方法で実現されてるかもしれませんが・・

例えば、こんな感じでしょうか?

 

<apex:inputText value="{!xxxx}" style="width:80px" id="xxxDate" onfocus="DatePicker.pickDate(true, '{!$Component.xxxDate}', false)"/>

Salesforce側で用意しているjavascriptにあるDatePicker.pickDateメソッドを利用すれば、日付項目以外でもカレンダーを表示させることができます。

上記の例では、apex:inputTextタグを利用してますが、inputタグでもidを指定すれば特に問題なく利用できるかと思います。

 

意図を取り違えてましたらすみません。

This was selected as the best answer
TOM*TOM*

takahiro-yonei wrote:

※もうすでに別の方法で実現されてるかもしれませんが・・

例えば、こんな感じでしょうか?

 

<apex:inputText value="{!xxxx}" style="width:80px" id="xxxDate" onfocus="DatePicker.pickDate(true, '{!$Component.xxxDate}', false)"/>

Salesforce側で用意しているjavascriptにあるDatePicker.pickDateメソッドを利用すれば、日付項目以外でもカレンダーを表示させることができます。

上記の例では、apex:inputTextタグを利用してますが、inputタグでもidを指定すれば特に問題なく利用できるかと思います。

 

意図を取り違えてましたらすみません。



takahiro-yonei様
回答ありがとうございます。ひとつお伺いしたいことがございます。
初歩的な質問なのかもしれませんが、{!$Component.xxxDate}というのが調べて見たのですが正直よくわかりません。
この数式項目はどこから現れたのでしょうか?
もしよろしければ教えていただけませんでしょうか?

takahiro-yoneitakahiro-yonei

「$Component」はVisualforce Pageのグローバル変数として定義されたものです。

Visualforceコンポーネントのidを参照する際に利用することが多いです。


※以下のURLで $Component のセクションをご確認下さい。

http://www.salesforce.com/us/developer/docs/pages/Content/pages_variables_global.htm

 

TOM*TOM*

わざわざ丁寧にありがとうございます。

無事作成することができました。

またどうぞよろしくお願いいたします。