4

ID を表示する単純な cfgrid があります。ID を新しいページへのリンクにして、「myID」の URL パラメーターを ID 値と共に渡します。

私はこのコードを試しました:

<cfgrid name="myGrid" query="myQuery" format="html">
   <cfgridcolumn name="myID" href="mynewpage.cfm" />
</cfgrid>

しかし、これで「mynewpage.cfm? hrefkey =111」という URL に移動します。私が本当に欲しいのは、「mynewpage.cfm? myID =111」です。url パラメータの名前を指定する方法はありますか?

私も試しました:

<cfgrid name="myGrid" query="myQuery" format="html">
   <cfgridcolumn name="myID" href="mynewpage.cfm?myID=#myID#" />
</cfgrid>

しかし、エラー " myID is not defined" が表示されます。cfgridcolumn タグ内からクエリ フィールドの値を参照する方法はありますか?

アップデート:

私が試したもう1つのこと- myURL「mynewpage.cfm?myID = 111」の値で呼び出される列を返すようにSQLクエリで文字列を作成し、その列をhref属性に使用します。

<cfgrid name="myGrid" query="myQuery" format="html">
   <cfgridcolumn name="myID" href="#myURL#" />
</cfgrid>

coldfusionのドキュメントによると、これを行うことができるはずです:

href -各グリッド列をハイパーリンクする URL を含むURLまたはクエリ列名。

(斜体の鉱山)

しかし、エラー " myURL is not defined" が表示されます。href をリテラル URL 値ではなく列に設定するにはどうすればよいですか?

4

2 に答える 2

1

これは、 href を使用した<cftree>/の問題に似ています。<cftreeitem>これに対する組み込みのソリューションはないようです。提供されたキーを処理し、アウトバウンド URL 書き換えを使用してアドレス全体の名前を変更するか (IIS にはネイティブ サポートがあり、Apache はUrlRewriteFilterでこれを実行できます)、または単に別の Javascript ベースのグリッドに切り替えることができます。

于 2013-01-14T22:15:44.683 に答える
0

1 つの解決策がこのページにあります。

http://www.houseoffusion.com/cfdocs1/Developing_Web_Applications_with_ColdFusion/14_Building_Dynamic_Forms/dwa14_09.htm

を使用して新しい列を定義します

<cfset queryAddColumn(SPEREQ_QRY_UNFULFILLED, "CUST_LINK", ArrayNew(1)) />

<cfloop query="SPEREQ_QRY_UNFULFILLED">
  <cfset querySetCell(SPEREQ_QRY_UNFULFILLED, "CUST_LINK","index.cfm?action=contact_info&cust_id=#SPEREQ_QRY_UNFULFILLED.CUST_CNTCT_LMS_ID#", SPEREQ_QRY_UNFULFILLED.currentRow) />
</cfloop>

この新しい列 cust_link を表示に使用します

<cfgridcolumn name = "CUST_CNTCT_LMS_ID" header="CustID"  
     href="CUST_LINK" target="_blank" width="20">
<CFGRIDCOLUMN NAME="CUST_LINK" DISPLAY="No">
于 2013-11-19T16:42:25.463 に答える