AJAX経由で返されたパーシャルにjavascriptを埋め込むことは悪い習慣と考えられていますか?
http://mysite.comに、AJAX 経由でフォームを取得するボタンがあるとします。ここで、(検証などのために) jQuery を使用して、このフォームにいくつかの JavaScript イベント ハンドラーを追加したいとします。
これを行う現在の方法は次のようです。
- フォームを返す AJAX コールバックで、タグのイベント ハンドラーをセットアップできます。
このアプローチは好きではありません。フォームを制御するコードを 2 つの場所に配置するためです。レンダリングされる部分と、含まれるグローバル JavaScript ファイルです。
- サーバー側からフォームを返す代わりに、すべてクライアント側で行います。サーバーからの応答が必要な場合 (フォームの検証など)、サーバーから JSON を返し、結果の HTML 要素 (エラー メッセージなど) を JavaScript で作成します。
このアプローチにより、より強力なサーバー側ツール (テンプレート言語) を使用して HTML 要素を作成するのではなく、JavaScript を使用して HTML 要素を作成しているように感じます。
ソリューションには、AJAX パーシャルによって返される HTML に JavaScript コードを埋め込む必要があるように感じます。これにより、アプリケーションの独立した機能コンポーネントになり、すべてのコードが 1 か所にまとめられます。
私がここでやろうとしていることを行うためのよりクリーンな方法はありますか?