私は ColdFusion をほぼ 14 年間使用しています。CF が非常に優れた製品である理由は、新しいユーザーがあまり理解していなくても多くの作業を迅速に完了できるようにし、ロケット科学者が非常に強力で安全なアプリケーションを迅速に構築できるようにするためです。
CFFFORM、CFINPUT、CFLAYOUT、CFPOD は、新規ユーザー用に作成されたタグです。基本的に、補助輪です。Web 開発に慣れていない場合は、このタグを試してみてください。経験を積むにつれて、これらのタグを削除し、他の手法に移行して、より堅牢なアプリケーションを作成したくなるでしょう。
補助輪に問題がないように、これらのタグにも問題はありません。各ジョブに適切なツールがあることを知っておく必要があります。実際には、それぞれの仕事に適したツールがたくさんあります。
現在、外部 Web サイトを構築する ColdFusion 9 / jQuery / SQL Server イントラネットを開発しています。単一のフォームタグを使用せずに実行しています。そして、私はそれを完全に CFSCRIPT で行っています。うわあ!
jQuery を使用すると、フォームは必要ありません。入力が必要なだけです。CFSCRIPT で入力を作成する方法を次に示します。
<cfscript>
Options = "";
for (i = 1; i lte 10; i++) {
Options = Options & wrapOption("Some choice #i# ", i);
}
SelectBox = wrapSelect(Options, "MySelectID");
writeOutput(SelectBox);
SecretDiv = wrapDiv("", "", "MyDivID");
writeOutput(SecretDiv);
</cfscript>
HTML を作成するためのユーザー定義関数は、UDF_Library.cfm ファイルにあります。
// WRAP SELECT
function wrapSelect(SelectContent, Class, ID) {
LOCAL.SelectContent = ARGUMENTS.SelectContent;
LOCAL.Properties = "";
// CLASS
if (isDefined("ARGUMENTS.Class")) {
LOCAL.Properties = LOCAL.Properties & " class='#ARGUMENTS.Class#'";
}
// ID
if (isDefined("ARGUMENTS.ID")) {
LOCAL.Properties = LOCAL.Properties & " id='#ARGUMENTS.ID#'";
}
LOCAL.Item = "<select #LOCAL.Properties#>#LOCAL.SelectContent#</select>";
return LOCAL.Item;
}
// WRAP OPTION
function wrapOption(Content, Value, Selected) {
LOCAL.Content = ARGUMENTS.Content;
LOCAL.Properties = " value='#ARGUMENTS.Value#'";
// SELECTED
if (isDefined("ARGUMENTS.Selected") and (ARGUMENTS.Selected eq "selected")) {
LOCAL.Properties = LOCAL.Properties & " selected";
}
LOCAL.Item = "<option #LOCAL.Properties#>#LOCAL.Content#</option>";
return LOCAL.Item;
}
// CREATE DIV
function wrapDiv(Content, Class, ID) {
LOCAL.Properties = "";
// CLASS
if (isDefined("ARGUMENTS.Class")) {
LOCAL.Properties = LOCAL.Properties & " class='#ARGUMENTS.Class#'";
}
// ID
if (isDefined("ARGUMENTS.ID")) {
LOCAL.Properties = LOCAL.Properties & " id='#ARGUMENTS.ID#'";
}
LOCAL.Item = "<div #LOCAL.Properties#>#ARGUMENTS.Content#</div>";
return LOCAL.Item;
}
私は jQuery を使用し、すべての要素をそのクラスまたは ID で参照します。これを行うと、次のように各要素のデータを ajax 呼び出しに送信できます。
<script type="text/javascript">
$(document).ready(function() {
$("#MySelectID").change(function() {
MyID = $("#MySelectID").val();
$("#MySecretDiv").load("CoolQuery.cfm?UserID"+MyID);
});
});
</script>
要点は、CFFORM と CFINPUT を使用している限り、本当に強力な jQuery のすべてを実行できるわけではないということです。ただし、開始するにはこれらのタグが必要です。
2012 年は、ColdFusion と jQuery のパワーにとって飛躍の年になるでしょう!!!
幸運を!