Java AJAX发布成功后更新表数据

Java AJAX发布成功后更新表数据,java,javascript,jquery,ajax,spring,Java,Javascript,Jquery,Ajax,Spring,我想在用户在弹出模式中发布更改后更新我的表数据。因此,用户(管理员)单击更新,然后更新必要的信息,然后通过ajax post函数提交更改。我已经得到了一切工作,直到这一点,但当用户关闭模式,他看到的是旧的信息,而不是更新的信息。我认为ajaxsuccess函数中应该有这样的功能,即用新信息重新填充表,但不确定如何做到这一点。这是到目前为止我的代码 AJAX功能: $("#updateUser").click(function() { $.ajax({

我想在用户在弹出模式中发布更改后更新我的表数据。因此,用户(管理员)单击更新,然后更新必要的信息,然后通过ajax post函数提交更改。我已经得到了一切工作,直到这一点,但当用户关闭模式,他看到的是旧的信息,而不是更新的信息。我认为ajaxsuccess函数中应该有这样的功能,即用新信息重新填充表,但不确定如何做到这一点。这是到目前为止我的代码

AJAX功能:

$("#updateUser").click(function() {
            $.ajax({
                type: "POST",
                url: "${pageContext.request.contextPath}/updateUser",
                data: $("#updateForm").serialize(),
                success: function(response) {
                    $("#alert").show();
                },
                error: function(XMLHttpRequest, textStatus, errorThrown) { 
                    alert("Status: " + textStatus); alert("Error: " + errorThrown); 
                } 
            });
        });
JSP代码:

<c:forEach var="user" items="${users}">
        <tr>
            <td id="id"><c:out value="${user.id}" /></td>
            <td id="name"><c:out value="${user.name}"/></td>
            <td id="username"><c:out value="${user.username}"/></td>
            <td id="email"><c:out value="${user.email}"/></td>
            <td id="dob"><c:out value="${user.dob}"/></td>
            <td id="authority"><c:out value="${user.authority}"/></td>
            <td>
                <button data-togle="modal" href="#updateModal" class="updateUser" value="${user.id}">Update</button>
            </td>
            <td>
                <a class="delete" href="<c:url value="/deleteUser"><c:param name="id" value="${user.id}"/></c:url>"><button>Delete</button></a>
            </td>
        </tr>
    </c:forEach>

更新
我正在使用Spring构建这个应用程序。我的控制器类具有检索所有注册用户的功能。 获取所有用户的控制器方法:

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

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

    model.addAttribute("users", users);

    return "users";

}
@Secured(“角色管理”)
@请求映射(“/users”)
公共字符串getUsers(模型){
List users=usersService.getUsers();
model.addAttribute(“用户”,用户);
返回“用户”;
}

只需将foreach循环写入变量,并在服务器端处理完成后将其发送回浏览器,然后使用
$('ele').replaceWith(response)谢谢你的回复,但不知道怎么做。你能帮忙吗?或者提供某种类型的资源,向您展示如何操作?您将数据发布到控制器,然后函数
updateUsers
启动..在updateUsers内部,在退出函数之前,您可以调用
getUsers()
并通过返回数据构建要发送回浏览器的局部视图。然后
success回调的
response
参数将包含
getUsers()
数据。然后可以使用
$('ele').replaceWith(response)
将当前表替换为更新后的表。或者……您可以简单地存储用户提交的更新,成功后使用JS替换DOM中的值/文本