4

同じフォームを複数回生成するというシナリオがあります。私のアプリケーションはSpring3.0フレームワークに基づいています。

シナリオ:基本的に、私はこのアプリケーションを輸送会社向けに設計しています。このアプリケーションでは、負荷をスケジュールする必要があります)どのドライバーがどの負荷を運ぶか、いつ、どの出発地からどの目的地まで)。ここで問題となるのは、荷物が出発地から目的地に直接配達されない場合があり、配達が分割されることです。たとえば、あるドライバーが出発地からある地点まで荷物を運び、別のドライバーがその地点から目的地まで荷物を運びます。ただし、分割の数は時間によって大きく異なる場合があります。

だから私は次のようなロードをスケジュールするために分割の数に基づいて動的に複数のフォームを生成する必要があります

Enter first splits information
--------------------------------
form1
----------------------------------


Enter second splits information
--------------------------------
form2
-------------------------------

submit button
4

2 に答える 2

4

あなたは以下のように何かをすることができます、

まず、ページ内のjquery関数のいずれかに、jsp次のコードを追加します。

for(var i=0; i<lcount;i++){ //lcount is number of splits.               
$('#tload'+i).load('url of controller class that helps in loading form');
}

divs同じjspページに同じidようにいくつか書いてください'tload1','tload2','tload3'

<div id="tload1"></div>
<div id="tload2"></div>
<div id="tload3"></div>
............
............
so on

コントローラから戻るときはいつでも、フォームをロードするiframeを含むjspページに戻ります。.load()上記のような関数を使用するとiframe、フォームを含む関数がそれぞれに自動的に読み込まれますdiv tags。これで、問題は解決されます。

于 2013-03-27T13:44:10.000 に答える
0

ここにいくつかのオプションがあります:

  1. 純粋なJavaScriptアプローチ-jQueryのようなJSライブラリを使用しますが、基本的には、必要なセクションをフォームに追加するJSがあります。ここで私の答えを参照してください。
  2. ラウンドトリップアプローチ-モデル属性の「分割」のリストを使用してJSTLにフォームを作成させます。ユーザーが[分割の追加]をクリックすると、同じURLを呼び出し、オプションのパラメーターを渡して、分割の数を指定します。リストに新しいものを追加し、ビューに戻ります

バックエンドへの呼び出し回数が減るので、個人的には最初のものが好きです。注意しなければならないことの1つは、[追加と削除]ボタンがあるかどうかです。モデル属性のマップ/リストに裏打ちされたリストからコンテンツを削除する場合は、それらのエントリを「クリーンアップ」する必要があります。そうしないと、最終的にフォームを送信したときにエントリが残っている可能性があります。

于 2013-02-06T17:27:01.513 に答える