1

最初の 10 件のニュースがサーバー側 (coldfusion) に表示され、次の 10 件のニュースがクリック (ajax、jquery) で読み込まれるページがあります。現在、すべてが魅力的なサーバーサイドのように機能しますが、クライアントではフォーマットと日付の表示に問題があります。より具体的には、データをロードする (クエリ結果を返す) 1 つのメソッドと、このように表示されるように日付 (並べ替え) をフォーマットするヘルパー コンポーネント (数分前、5 時間前など) があります。CF では、cfoutput から直接書式設定を処理する関数を呼び出します。これは問題なく機能するため、範囲を数学的にカウントするコード全体を投稿する必要はありません。

<cfset loadNews = sql.Getnews(orderBy="Date",startFrom=0)>
<cfset helper = createObject ("component","cfc.helper")>

<cfoutput query="loadNews">
#helper.formatDate(nDate=Date)#
</cfoutput>

一方、json はこの2013 年 9 月 29 日 15:05:45 のような日付を返します。場合によっては、ローカル言語が変更されると、日付を適切にフォーマットできず、javascript(jquery) で同じ計算を行うことができません。クライアントで同じ機能を取得するための最良の、最も機能的な方法は何ですか? おそらくクエリのクエリを使用して、同じ関数を使用して日時を文字列値に変換し、結果を返すか、クライアントですべてを実行する必要があります。これについてあなたの助けを本当に感謝します:(

はい、mysqlテーブルの日付(datetime列)は次のようになります 2013-09-30 17:24:56

4

1 に答える 1

1

ここに解決策があります

<cfset newColumn = ArrayNew(1)>
<cfloop query="qNews">
<cfset arrayAppend(newColumn, helper.formatDate(nDate=qNews.Date))>
</cfloop>
<cfset queryAddColumn(qNews, "fDate", newColumn)>
于 2013-10-03T09:15:14.623 に答える