2017-10-23 14 views

答えて

0

私はあなたの質問に従っているかどうかわからないので、関連性のある情報をいくつか出す予定です。

入力した構文が機能します。

input.cfmファイルでは、Attributes.idを参照します。その値は "mytag"になります。

cfparamを使用してデフォルト値を設定することをお勧めします。

<cfparam name="Attributes.id" type="string" default="tag"> 

などです。

あなたの代わりに文字列「mytagという」の「mytagという」構造に渡したいなら、あなたは以下のsytax使用します。

<cf_input id="#mytag#"> 

あなたがAttributes.mytagを使用して色を取得できるようになります。ボーダの色。あなたは、文字列を渡すが、それでもページの変数の範囲から色を取得したいされている場合、それはようなものになるだろう

<cfparam name="Attributes.id" default="#StructNew()#"> 

:、あなたのCFPARAMをもっとだろう、その場合には

これは、呼び出しページの変数スコープがカスタムタグ内で "呼び出し元"スコープとして使用可能であるためです。私はカプセル化を壊しているので、これを使用することに注意することをお勧めします。 (おそらく)という特別に渡された変数名に手を差し伸べている場合は、通常、Callerスコープから指定されていない変数を取得することはお勧めできません。

+0

スティーブ、ありがとうございました。私はあなたの情報を勉強します。具体的には、カスタムタグをオブジェクトとして扱うことができるかどうかを知りたいので、その機能をプログラム的に変更するには... – Manaus

+0

@Manausオブジェクトとしてオブジェクトを使用したい場合は、ColdFusionコンポーネントの使用を開始する必要がありますカスタムタグの代わりにカスタムタグ(cfc)を使用します。 [オブジェクト指向Coldfusion:1:Object.cfcの紹介](http://www.iknowkungfoo.com/blog/index.cfm/2007/8/22/Object-Oriented-Coldfusion--1--Intro-to- –

+0

@Manausそれは本当にあなたがやろうとしていることに依存します。一般的に、誰かがオブジェクトを望んでいると言うと、Miguel-FはCFCSを正しく使用しています。特に多型を探している人は避けてください。つまり、ColdFusionではカスタムタグが実際には信じられないほど強力です。 –

2

ドキュメントによれば、を除き、を除き、ハッシュタグの間に変数名を囲むのを忘れてしまっています。#代わりにこれを試してみてください:

<cf_input id="#mytag#"> 

変数がカスタムタグに渡される方法を覚えておく必要があります。ドキュメントから - Passing variables to custom tags and UDFs

渡すCFMLタグに変数とUDF

あなたは、引数として、またはユーザー定義関数の属性としてCFMLカスタムタグに変数を渡します、次の規則は、カスタムタグまたは関数が変数の専用コピーを受け取るか、呼び出しページの変数への参照を取得するかどうかを決定します。

  • 単純変数および配列は、彼はデータです。引数が複数の単純変数を含む式である場合、式評価の結果は関数またはタグにコピーされます。
  • 構造体、クエリ、およびcfobjectオブジェクトは、オブジェクトへの参照として渡されます。
    タグまたは関数が呼び出しページのデータのコピーを取得した場合、カスタムタグまたは関数の変数を変更しても、呼び出しページの変数の値は変更されません。変数が参照渡しで渡された場合、カスタムタグまたは関数の変数を変更すると、呼び出しページの変数の値も変更されます。
    変数をカスタムタグに渡すには、変数名を数字記号で囲む必要があります。変数を関数に渡すには、変数名を数値記号で囲まないでください。
+0

たぶん私は明確ではなかったが、私の質問は単純な値をタグに渡すことではなく、一意的なID名でタグを扱うことである。タグ内では面倒なことなく 'bordercolor'にアクセスできる... – Manaus

+0

コメントは明確ではありません。おそらく、あなたの質問を編集して、議論されているタグにbordercolor = "red"をどのように使うのかを示すべきでしょう。 –

関連する問題