0

ジョブによって自動生成される 2 つの asp ファイルのコレクションがあります。コレクション 1 には「/collection1/」の仮想パスがあり、コレクション 2 には「/collection2/」の仮想パスがあります。どちらのコレクションにも同じ asp コードがあります。

<!-- #include file="../SSI/Template.inc" -->

Template.inc の中には、いくつかの典型的な html テンプレートがあります。ただし、コレクション 1 にはテンプレート 2 とは異なるテンプレートを使用したいと考えています。私の質問は、インクルード ファイルでどのページが呼び出されたかを判別できるので、簡単な if ステートメントを実行して別のテンプレートを表示できますか?

最も簡単な方法は、ジョブを変更して別の ASP をレンダリングするように見えるかもしれませんが、これはオプションではありません。

編集 - .inc のハンドラーを追加して、classicasp に移動できます。

4

1 に答える 1

2

あなたが言うように、あなたのコレクションは異なる仮想パスにあります。したがって、(サーバー変数を使用して)ページのURLを確認し、パスに従ってレンダリングすることができます。

たとえば、次のように配置できます../SSI/Template.inc

if instr(Request.ServerVariables("URL"), "/collection1") > -1 then
  'render html for collection 1
else
  'render for collection 2
end if
于 2009-09-23T07:27:44.873 に答える