テンプレート式リファレンス
テンプレート式とは
テンプレート式は、「オプション領域」を表示させるかを決定する条件式や@@(式)@@などで変数の内容を表示させたい時などに利用できる簡易的なスクリプト言語です。
書式
テンプレート式は、基本的には「機能限定版JavaScript?」です。基本的な書式はJavascriptと同じです。例えば、複数の変数に割り振られた文字列をつなげたい時には、JavaScript?同様、
@@(firstName+lastName)@@
というように「+」演算子でつなげてその結果を出力させることができます。
サポートされている型・演算子
サポートされている機能および演算子は以下のとおりです。
- 数字リテラル(数字)
- ストリングリテラル (二重引用符のシンタックスのみ)
- ブールリテラル (true または false)
- 変数リファレンス (この項の後半に示された定義済みの変数のリストを参照)
- フィールドリファレンス (演算子「ドット」)
- 単項演算子 : +, -, ~, !
- バイナリ演算子 : +, -, *, /, %, &, |, ^, &&, ||, <, <=, >, >=, ==, !=, <<, >>
- 条件演算子 : ?:
- カッコ : ()
注意
使用されているデータタイプには、ブール、IEEE 64 ビット浮動小数点、ストリング、およびオブジェクトがあります。Dreamweaver のテンプレートでは、JavaScript? の "null" および "undefined" タイプはサポートされていません。また、オブジェクトに暗黙的に変換されるスカラータイプも使用できません。したがって、"abc".length という式はエラーを引き起こし、3 という値を求めることはできません。
定義済み変数
式オブジェクトモデルで定義されているオブジェクトのみ使用できます。定義されている変数は、以下のとおりです。
- _document
- ドキュメント内のパラメータごとに 1 つずつフィールドがあり、ドキュメントレベルのテンプレートデータを保持します。
- _repeat
- リピート領域内に表示される式に対してのみ定義されます。領域に関する以下の組み込み情報を指定します。
- _index
- 現在のエントリの数字インデックス (0 から)
- _numRows
- このリピート領域に含まれるエントリの合計数
- _isFirst
- 現在のエントリがリピート領域の最初のエントリの場合は true
- _isLast
- 現在のエントリがリピート領域の最後のエントリの場合は true
- _prevRecord
- 前のエントリの "_repeat" オブジェクト。領域の最初のエントリに対してこのプロパティを使用するとエラーになります。
- _nextRecord
- 次のエントリの "_repeat" オブジェクト。領域の最後のエントリに対してこのプロパティを使用するとエラーになります。
- _parent
- ネストされたリピート領域で、外側のリピート領域の "_repeat" オブジェクトを指定します。ネストされたリピート領域以外にこのプロパティを使用するとエラーになります。
注意(ヘルプより)
- 式の評価では、_document オブジェクトおよび _repeat オブジェクトのすべてのフィールドが暗黙的に使用可能になります。たとえば、_document.title の代わりに title を入力して、ドキュメントのタイトルパラメータを表示することができます。
- フィールドの衝突が生じた場合は、_repeat オブジェクトのフィールドが _document オブジェクトのフィールドに優先します。したがって、_document または _repeat を明示的に参照する必要はありません。ただし、リピート領域のパラメータによって非表示にされているドキュメントパラメータを参照するために、リピート領域の内側に _document が必要な場合を除きます。
- ネストされたリピート領域が使用されている場合は、最も内側にあるリピート領域のフィールドのみが暗黙的に使用可能になります。外側の領域は、_parent を使用して明示的に参照する必要があります。
つまり、_documentや_repeatは大抵省略しても問題ないようになってます、ということです。
last update: 2005-10-17 (月) 00:00:00 (1533d)