jQuery UIタブを使用するようにレガシーアプリケーションを変換することを検討しています(AJAXを使用して各タブのデータを取得します)。
周囲のヘッダー、左ペイン、右ペイン、フッター ペインの HTML を使用せずに、ページの HTML の「内臓」のみで応答するようにレガシー アプリケーションを簡単に構成できます。パフォーマンスの改善 (認識および実際の) は顕著です。に加えて、アプリケーションがより洗練された最新のものに見えます。
ただし、レガシー アプリケーションでは、データベースの CRUD 操作に 3 つの個別のページが使用されます。
Page-1 : Criteria フォーム - 以下に投稿:
Page-2 : SQL クエリと結果の表示 - 次へのリンク:
Page-3 : DELETE および SAVE オプションを使用したレコードのメンテナンス用フォーム
また、元の 3 つのページすべてに ID、フォーム名、フォームフィールド名が重複しています。レガシーアプリを変更して一意の ID にするのは膨大な作業 (膨大な数のページ) になるので、可能であれば回避したいと考えています。
私の最初の試みは、innerHTML がフォーカスを失ったときに Tab から連想配列に「移動」し、タブがフォーカスを取得したときに元に戻すことでした。これは表示の観点からは正常に機能しますが、基になるコードに関連付けられているすべての Javascript が壊れているようです (連想配列に移動してから元に戻すと)。
他のさまざまなアプローチを試す前に、経験や提案をいただければ幸いです。私の考えは次のとおりです。
A.私が使用している方法で壊れているものを
整理します B.タブがフォーカスを失ったときにすべての名前/IDにPREFIXを適用し、タブがフォーカスを取得したらPREFIXを削除します。
しかし、多分もっと良い方法がありますか?
助けてくれて本当にありがとうございます。
他の情報:
レガシーアプリケーションには、フォームなどの固定名を想定する JS 関数 [SAVE、DELETE、FIND などのアクション用] への OnClick 呼び出しがあり、フォームの検証には、FormFields の名前に基づいてルールを定義する JS があります。システム全体でこれを行うには多くの作業が必要であり、多くの QA テストが必要になるため、可能であれば別のルートを見つけたいと考えています。