3

次の内容の test.cfm ファイルを検討してください。

<html>
    <body>
        <cfif foo EQ bar>
            <cfset test = "something" />
        </cfif>
        <p>Hello!</p>
    </body>
</html>

ブラウザーで実行すると、このファイルの出力のソース コードは次のようになります。

<html>
    <body>



        <p>Hello!</p>
    </body>
</html>

これを修正する方法はありますか?

4

3 に答える 3

7

これを修正する方法はありますか?

修正する必要はありません。HTML は完全に有効で機能しています。

問題がリクエストのサイズである場合は、gzip エンコーディングを使用してください。

問題がデバッグ用にソースを読み取っている場合は、 Firebug /etc などの開発者ツールを使用してください。


ただし、保守性を向上させるために行う必要がある一般的なことは次のとおりです (同時に、空白の出力も削減されます)。

1) ビューから表示ロジック以外のものを移動します。

2) 表示ロジックを必要に応じて関数およびカスタム タグに変換します。これにより、出力の防止/制御が容易になります。


不要なコンテンツが出力されないようにするために、次のことができます。

  • 何も出力されないように、セクション全体をcfsilentでラップします。

  • cfsettingenablecfoutputonlyの属性を有効にしてから、出力したいものにのみ cfoutput を使用します。

  • output=falsecomponent タグと function タグに常に設定します。

  • 一部のテキストを選択的に出力したい場合は、タグ以外の非出力セグメントを CFML コメントで囲みます<!---... --->(たとえば、カスタム タグでの改行出力を防ぐのに役立ちます)

(私は cfprocessing ディレクティブを気にすることはありません。上記のすべてが問題をより適切に解決します。)

于 2012-08-18T20:39:42.997 に答える
5

CF アドミニストレーターにアクセスできる場合は、空白を抑制するオプションがあります。

「サーバー設定」の下にあります->「設定」は「空白の管理を有効にする」と呼ばれます。

于 2012-08-18T20:46:49.500 に答える
4

試す<cfprocessingdirective suppressWhiteSpace="true">

参照: http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSc3ff6d0ea77859461172e0811cbec22c24-76de.html

于 2012-08-18T20:10:54.273 に答える