1

基本的に、情報の更新と送信を行った後、フォームの上にあるテーブルを、フォームの送信時に更新された情報で実際に変更したいと考えています。私は残りの部分と一緒に春のフレームワークを使用しています。これを行う方法を知りたいです。私のコードはまだスパイク段階にあります。これは、ユーザー情報を取得および更新するための私の ajax コードです。

$('.ajax_test').click(function() {
                    var userId = +$(this).val();
                    $.get('${pageContext.request.contextPath}/ajax/' + userId, function(user) {
                        $(".personDetails #id").val(user.id);
                        $(".personDetails #name").val(user.name);
                        $(".personDetails #username").val(user.username);
                        $(".personDetails #email").val(user.email);
                        $(".personDetails #authority").val(user.authority);
                    });
                });

        $("#myForm").submit(function(e) {
                    $.post('${pageContext.request.contextPath}/updateUser', $(this).serialize(), function(response) {
                                alert("User has been updated");
                    });

                    e.preventDefault();
                });

そして、これはリクエストを処理する私のコントローラーです:

@RequestMapping("/ajax/{id}")
public @ResponseBody User getUser(Model model, @PathVariable int id) {
    User user = usersService.getUser(id);
    model.addAttribute("user", user);
    return user;
}


@RequestMapping(value = "/updateUser", method = RequestMethod.POST)
public @ResponseBody String updateUser(User user, Model model) {
    usersService.updateUser(user);
    return "users"; 
}

これは、すべてのユーザーを一覧表示する私の方法です。

@Secured("ROLE_ADMIN")
@RequestMapping("/users")
public String getUsers(Model model) {

    List<User> users = usersService.getUsers();

    model.addAttribute("users", users);

    return "users";

}

私の ajax は、単純な ajax GET リクエストで上記のメソッドと対話する必要がありますか?

4

0 に答える 0