0

アプリケーションがありJquery Mobileます。JQMによって要求される最初のページは、常に通常のページ読み込みです。以降のすべてのページは、Ajaxを介してプルされます。ユーザーはすべてのページから始めることができるので、(システムエラーメッセージなど)のようなすべてのカスタムのものを含むすべてのページに完全なヘッダーを配置する必要があります。

これはすべて最初のページに読み込まれます。後続のページの読み込みvia AJAX時に、JQMはページ全体を要求しますが、の間のコンテンツのみdiv data-role="page"が使用されます。

だから私はこれをすることを考えていました:

<cfset variables.xmlDetect = "">
    <cfset variables.headsUp = GetHttpRequestData()>
    <cfif StructKeyExists(variables.headsUp.headers, "X-Requested-With")>
        <cfset variables.xmlDetect = StructFind(variables.headsUp.headers, "X-Requested-With")>
    </cfif>
    <cfif variables.xmlDetect NEQ "">
        <cfset request.xmlDetected = "true">
    <cfelse>
        <cfset request.xmlDetected = "false">
    </cfif>

にフラグを設定しthis is requested via AJAXます。これにより、ページヘッダーやその他すべてを削減できます。これは、最初のページに既に読み込まれているためです。

requestスコープを読み取るだけでは、リクエストスタックを介して情報を渡すのは不適切です。そうですか?私はのアイデアが好きですif request=xml, skip all of this, else serve it。カプセル化に違反することなく、テンプレートとビュー全体でこれを行う適切な方法は何でしょうか?クライアントに到着するとすぐに送信およびダンプされる大量のデータを保存するだけです。

いくつかの考えをありがとう!

4

1 に答える 1

1

このロジックをカスタムタグラッパーに移動することを検討します。ラッパーは、必要に応じてヘッダーの出力を処理し、チェックインします。この完全な例は、私のブログで見ることができます:http ://www.raymondcamden.com/index.cfm/2011/8/26/Making-jQuery-Mobile-templates-even-easier--with-ColdFusion

于 2012-10-05T02:23:47.397 に答える