2012-03-08 6 views
-4

タイトルのように、私はFORMからCFCを呼び出しています。これは今私がやっていることですが、よりよい方法が必要です。FORMからCFCを呼び出す

フォーム:

<cfform action="choice.cfm" method="post"> 
    <cfinput type="hidden" name="method" value="DeleteMessage"> 
    <cfinput type="hidden" name="announcement" value="#announcement#"> 
    <cfinput type="hidden" name="ID" value="#ID#"> 
    <cfinput type="submit" value="Delete" name="form.OKbutton1" onclick="return confirm('Are you sure you want to delete?');"> 
</cfform> 

アクションページ:

<cfif IsDefined("form.OKbutton1")> 
    <cfinvoke component="pdprojects.scr.changedisablesysequipment" 
     method="DeleteMessage" 
     returnvariable="DeleteMessages" 
     argumentCollection="#Form#" /> 
</cfif> 
+2

あなたが持っている問題を明確に述べてください。 –

+0

ジェイクが言ったこと。 :)私はあなたがしていることに本当に問題がないと思う。 – RobG

+0

はあなたの質問に答えていませんが、私はisDefined( "form.OKbutton1")の代わりにStructKeyExists(フォーム、 'OKbutton1')を使用します。スコープ変数のプロモートに役立ちます –

答えて

0

私はjQueryとCFCでこれを合理化する方法を考え出しました。ページの更新が速く、ボタンを戻したりページを更新したりする心配もありません。 location.reload()の代わりにdivタグを追加するために、JQueryを使ってもっと多くのことを行うことができます。 (ページリフレッシュ)を呼び出します。

CFコール

<cfajaxproxy cfc="pdprojects.scr.changedisablesysequipment" jsclassname="choice_cls"> 

ここでここでjqueryの

<script src="/js/jquery-1.7.1.min.js"> 


<script> 
$(document).ready(function(){ 
    $("#OKbutton").click(function(){ 
     if ($('#Announcement').val() == "") { 
      alert("Please enter message in the text area!"); 
     } 
     else { 
      var instance = new choice_cls(); 
      instance.setForm("enterit"); 
      instance.InsertMessage(); 
      location.reload(); 
     } 
    }); 
    $("#OKbutton1").click(function(){ 
      var instance = new choice_cls(); 
      instance.setForm("deleteit"); 
      instance.DeleteMessage(); 
      location.reload(); 
    }); 
}); 

は私のhtmlです

<cfform action="" id="enterit" name="enterit" method="post"> 
<cfinput type="hidden" value="#session.username#" name="thisname"> 
<cftextarea cols="50" rows="8" name="Announcement"></cftextarea><br> 
<cfinput type="button" value="Enter Announcement" name="OKbutton" id="OKbutton"> 
</cfform> 

<cfform action="" id="deleteit" name="deleteit" method="post"> 
<cfinput type="hidden" name="method" value="DeleteMessage"> 
    <cfinput type="hidden" name="announcement" value="#announcement#"> 
    <cfinput type="hidden" name="ID" value="#ID#"> 
    <cfinput type="button" value="Delete" name="OKbutton1" onclick="return confirm('Are you sure you want to delete?');"> 
</cfform> 

は、それからちょうどColdFusionのためのあなたのCFCを作成します!

関連する問題