1

作成中のサイトに CFwheels を使用しており、ネストされたビューを使用する必要があります。ただし、ポップアップ ビューでフォームを送信すると、コンポーネントが機能しないようです。

以下は、私が使用しているいくつかのテスト コードです (ポップアップ内のビューを個々のページとして使用すると、すべて正常に動作します)。

このようなことを実現する特定の方法はありますか、それとも CFWheels ではサポートされていませんか?

global.cfm - 親ビュー

  <a href="##createClient" role="button" class="btn btn-success" data-toggle="modal">Add New Client</a>            



 <div id="createClient" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
            <cfinclude template="createClient.cfm">
 </div>

createClient.cfm - ネストされたビュー (ポップアップ)

<form method="post" action="createClient">
<input type="hidden" name="isPost" value="1" />


        <table>
        <div class="modal-body">
            <tr>
                <td>Client Brand Name:</td>
                <td><input type="text" name="ClientBrandName" value="" required></td>
            </tr>

            <tr>
                <td>Survey Referral:</td>
                <td><input type="text" name="surveyReference" value="" required/></td>
            </tr>

ネストされたビューのコントローラー

<cffunction name="createClient">        
    <cfif isDefined('form.isPost')>
        <cfscript>
         application.someComponent.someFunction(
            CBname = params.clientbrandname,
            sRef= params.sreferralid,
            sRefname = params.surveyreference
         );
        </cfscript>
    </cfif>
</cffunction>
4

1 に答える 1

0

私はあなたの質問に直接答えているわけではありませんが、あなたは非常に「車輪のような」方法でこれに取り組んでいません。

まず、すべての cfwheels フォーム + url パラメータが params スコープにプッシュされるため、通常、最初に structkeyexists(params, "isPost") (またはそのようなもの) を実行します。(ただし、フォーム スコープにアクセスできないと言っているわけではありません)。

第 2 に、名前付き引数を渡すことができるため、cfinclude よりも includePartial() の方が便利であることに気付くかもしれません。

Ajax/Modal 呼び出しは wheel でサポートされていますが、誤って間違った URL に送信していると思います。レイアウトも削除する必要があります。

https://github.com/neokoenig/RoomBookingをご覧ください。役立つブートストラップ モーダル ウィンドウの例がいくつかあります。

于 2014-01-04T22:38:46.507 に答える