重新渲染网页的一部分

Rerender a part of a web-page

我正在使用 JSP。我需要在 listUser.jsp 页面上提交表格:

<form class="emp-delete">
    <label for="emp-id">Id:</label>
    <input type="text" id="emp-id" />
    <input type="submit" value="delete" />
    <c:out value="${message}" />
</form>

表单提交在服务器上执行业务逻辑,并向模型添加message参数如下:

@RequestMappin(value="mapping")
public String deleteUser(Model m){
    String msg = null;
    // execute some logic
    m.addAttribute("message", msg);
    return "listUser";
}

问题是这样的方法完全重新呈现网页,但我只需要刷新 <c:out> 标记的值。我该怎么做?

您可以使用 AJAX 提交表单。例如。使用 JQuery

$.ajax({
  type: "POST",
  url: url,
  data: data,
  success: success,
  dataType: dataType
});

并处理结果更新必要的 DOM 元素。

参见例如here or here