2013-09-24 43 views
0

基本上我希望得到的帮助基本上是如何删除或更新管理员查看用户列表时显示在表中的用户信息。更新和删除列表中的用户信息

我需要真正知道的是我如何根据每个单独的表格行获取用户的值。到目前为止,我有这样的事情:一个用户列表使用JSTL像

<td> 
    <a href="<c:url value="/deleteUser"><c:param name="id" value="${user.id}"/></c:url>"> 
     <button>Delete User</button> 
    </a> 
</td> 

此代码片段显示了表当管理员查看“listUsers页面显示。我的控制器然后有这样的东西:

@RequestMapping("/deleteUser") 
public String deleteUser(@RequestParam(value = "id", required= false) Integer id) { 
    usersService.delete(id); 
    return "users"; 
} 

它的工作原理,虽然它是越野车。我想知道正确的实现方法,以及如何正确执行此功能。

+0

有一个spring:url标记,你可以用它来定义一个基于它的简短URI名称的URL,并且它预先设置了正确的开始部分。你甚至可以设置一个VAR。我喜欢这种方法比将标签放置在标签属性内更好,因为这会让人感到困惑,并且会使编辑变得疯狂。 – CodeChimp

回答

0

您可以使用Ajax进行此类调用。 当用户点击“删除用户”时,可以调用一个javascript函数从某个属性(如锚标签的名称属性)读取userId,然后调用控制器。

@ResponseStatus(HttpStatus.NO_CONTENT) 
@RequestMapping("/deleteUser/{userId}") 
public void deleteUser(@PathVariable Integer userId) { 
    usersService.delete(id); 
} 

现在你可以检查你的Ajax调用的响应状态,如果成功删除用户的行 你也可以使用jQuery作出AJAX调用,它使生活更简单。