4

私は、外部の css および javascript ファイルの使用を好みます。ただし、javascript または css ファイルのコンテンツを動的にする必要がある場合が多くあります。通常は、javascript または css を aspx ページのインライン コードまたはインページ コードに転送し、そこで動的なものを処理します。

誰もがより良いアプローチを持っていますか? asp.net の通常のテンプレート言語を使用して js または css ファイル全体を生成する方法はありますか?

私は現在 Web フォームを使用していますが、MVC でもこの問題を解決したいと考えています。

ありがとう

4

5 に答える 5

4

以前、 HTTPHandlerを使用して動的な JavaScript を送り返しました。ただし、System.Web.UI.Page から継承するものではありません。

HTTPHandler とASHXまたはAXDを使用することは、リソースを動的に送り返す「ASP.Net」の方法です。

于 2009-04-23T18:27:03.013 に答える
2

動的 css のハンドラーを使用しました。必要に応じて、js ファイルについても同じことができます。

##bacgroundcolor## のように動的にする必要がある部分のプレースホルダーを含む css ファイルがあり、ハンドラーは適​​切に置き換えられました。

また、css クラスを使用して、特別な動作が必要な html 要素をマークするアプローチも使用しました。次に、静的 js がこの要素を探し、適切なハンドラーをフックします。これは確かにjqueryを使えばさらに簡単になるものです(当時は通常のjsでやりました:()。

于 2009-04-23T18:27:35.633 に答える
1

以前に aspx ページでこれを行ったことがありますが、私の意見では、WebForm スタイルは、厳密な JavaScript または CSS のレンダリングには適していません。私がそれを行うたびに、ページは古典的な ASP のように見えてきました。

于 2009-04-23T18:28:42.417 に答える
0

うまくいけば、実際に使用している JavaScript は静的なままで、パラメーターを JavaScript メソッドに渡すだけで済みます。

于 2009-04-23T18:29:12.527 に答える
0

ページのマークアップに含まれていた、次のようなものを含む JavaScript コードを取得し<%= control.ClientID %>、静的な JavaScript に置き換えました。コードをクラスにリファクタリングし、次にこれらの変数部分をクラス メンバーにリファクタリングしました。このページは、ClientID セットなどを使用して、クラスのインスタンスを作成します。その後、関数を静的にすることができます。

于 2009-04-23T18:33:46.697 に答える