2012-02-16 7 views
0

jspの複数のテーブルのいずれかに新しいユーザー名を追加しようとしています。各テーブルはjspfファイルで定義され、jspに含まれます。私はjQuery.ajax()を使用して、Spring Controllerに名前を送信しようとしています(これは、すべての中間層とバック層の作業を行います)。 Spring Controllerが返ってきたら、1つのテーブルを自動的に更新します。私はページ全体をリフレッシュしたくありません。jQuery ajaxとSpring Controllerを使用してjspfをリフレッシュする際に問題が発生しました

どうすればよいですか?私はSpring Controllerから何を返すのですか?私は基本的に1つのテーブル(これは単一のjspfファイルにあります)を更新する必要があります。コントローラから

$.ajax('/path/addUser.html', { 
    type: "POST", 
    data: { "userName" : "bob" }, 
    success: function(data) { 
    // do what if anything? 
    }, 
    error: function(jqXHR, textStatus, errorThrown) { 
    Ext.MessageBox.alert('Error', errorThrown); 
    } 
}); 

答えて

1

戻り、ユーザ名とテーブル名を(あなたが複数のテーブルを持っている場合):ここでは

は、私が使用していますAJAX呼び出しの一例です。次に、Jqueryを使用して対応するテーブルにユーザー名を追加します。
コントローラでJSONオブジェクトに値を入力すると、Json-simpleを使用してjsonオブジェクトの値をエンコード/デコードすることができます。コントローラの戻り値の型として@Responsebodyを使用すると、ページ/ビューの更新を回避できます。コントローラで

JSデコードJSON値と使用jqueryので
JSONObject json = new JSONObject(); 
json.put("userName", user_name); 
json.put("tableName",table_name); 
return json; 

あなたは使用することができますように

$(tableName + "tr:last").after(userName); 
    $.ajax('/path/addUser.html', { 
    type: "POST", 
    data: { "userName" : "bob" }, 
    success: function(data) { 
     $(data.tableName + "tr:last").after(data.userName); 
    }, 

}); 
関連する問題