2

selectエンティティの種類名を含むリストがある JSP があります。selectエンティティの種類を選択すると、選択したエンティティの種類のフィールド名を別のリストに入力する必要があります。そのために、onchangeイベントで JavaScript 関数を呼び出します。

arraylistJavaScript メソッドでは、選択したエンティティの種類のフィールド名を含むを返すメソッドをバックエンドで呼び出す必要があります。

Ajax の有無にかかわらずメソッドを呼び出すにはどうすればよいですか? また、2番目の選択リストに動的にデータを入力するにはどうすればよいarrayListですか?

4

4 に答える 4

0

ジェイに同意します。そのフォームを Java メソッドに送信する必要があります。その後、Java メソッドは arrayList を返します。もちろん、フォームを送信すると、ページが更新され、以前に選択した値がフォームで引き続き選択されるかどうかはわかりません。私はそれを行うこの方法にあまり慣れていません。私はjqueryを使用することを好みます。

jquery を使用すると、次のように実行できます。

$.ajax({
    url: "/MyApp/MyClass/getArrayList",
    type: "GET",
    data: "selectedEntity=" + s_entity,
    success: function(response){ 
        //handle returned arrayList
    },
    error: function(e){  
        //handle error
    } 
});

これを関数に入れます。選択したエンティティをパラメーターとして渡し、成功部分で応答を処理します。もちろん、Java メソッドは「selectedEntity」をメソッド ヘッダーのパラメータにマップする必要があります。Spring では、次のように行われます。

private @ResponseBody ArrayList getArrayList(@RequestParam("selectedEntity") String entity)
于 2013-04-29T08:16:27.923 に答える
0

リストをバックエンドから動的にロードしたい。次のいずれかでサーバーと通信する必要があります。

  • ページ読み込み (フォーム送信)
  • またはページロードなし(ajax)。

あなたの要件でない場合AJAXは、初心者にとってシンプルで簡単なため、最初にフォーム送信(ページロードあり)で行うことをお勧めします.

于 2013-04-29T07:52:41.077 に答える