这是html代码
<ul id="myUL">
<c:forEach var="userBean" items="${list}">
<li id="username"><a href="#">${userBean.username}</a></li>
</c:forEach>
</ul>
<div class="card">
<p>${userBean.phoneno}</p>
<p>${userBean.Address}</p>
</div>
这是 AJAX
<script>
$("#myUL").click(function(){
var username=$('#username').val();
$.ajax({
url: "details",
type: 'GET',
data: {username:username},
success: function(data){
$("#card").html(data);
}
});
});
</script>
这是 Controller 代码
@RequestMapping(value="details", method = RequestMethod.POST)
@ResponseBody
public ModelAndView details(@RequestParam UserBean userBean, HttpServletRequest request, HttpServletResponse response)
{
ModelAndView view = new ModelAndView();
String username=userBean.getUsername();
if(retrieveService.getdetail(userBean)!= null)
{
view.setViewName("welcomes");
}
return null;
}
我不知道如何将值从 AJAX 传递到 Controller 。 这是示例输出
Name Details
john john
smith phoneno. 324242
Address:xyz
如果我单击名称,即 <li>
标签。它将显示从 MySQL 到 JSP 的详细信息
最佳答案
将您的 JavaScript 代码更改为:
<script>
$("#myUL").click(function(){
var username=$('#username').val();
$.ajax({
url: "details",
type: 'POST',
data: {username:username},
success: function(data) {
$("#card").html(data);
}
});
});
</script>
并将 Controller 代码更改为:
@PostMapping(value = "details")
public ModelAndView details(@RequestBody UserBean userBean, HttpServletRequest request,
HttpServletResponse response) {
ModelAndView view = new ModelAndView();
String username = userBean.getUsername();
if (retrieveService.getdetail(userBean) != null) {
view.setViewName("welcomes");
}
return view;
}
关于javascript - 使用 Spring MVC 将值从 AJAX 传递到 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52514265/