将参数从 Button 传递到 Java spring MVC 控制器
Pass parameter from Button to Java spring MVC controller
我一直在寻找可以帮助我解决此问题但未成功的东西。我需要的只是通过按下 Button 元素来调用 Spring 控制器,并从中传递一个 RequestParam(在这种特定情况下为 "statusId")。有没有办法不使用 JavaScript 来做到这一点?
我有下一个html:
<div class="tablero col-lg-4 col-md-4 col-sm-6">
<div class="inner-content">
<div class="rate">
<div class="number">
<span>${package}</span>
<span class="text">REFERRALS</span>
</div>
</div>
<div class="description">
<h3>
<i class="fa fa-shopping-bag"></i>
PACKAGE
</h3>
<label>Paquete</label>
<button class="btn-primary" onclick="location.href='listReferred.htm' id="package">GO TO LIST</button><!--The parameter should be send from this button-->
</div>
</div>
</div>
和 Spring MVC 控制器:
@SuppressWarnings("unchecked")
@RequestMapping(value="/listReferred", method=RequestMethod.GET)
public String getListReferredPage(@RequestParam int statusId, Model model) {
RestTemplate restTemplate = new RestTemplate();
String url = URL_REFERREDTYPE_JSON+statusId;
List<SearchProspectTO> searchProspectToList = restTemplate.getForObject(url, List.class, statusId);
model.addAttribute("searchProspectToList", searchProspectToList);
return "portalInternoReferidos";
}
至少用表单包围按钮元素,如下所示:
<form action="listReferred" method="get">
<button...
</form>
向按钮添加名称和值属性:
<button name="yourButton" value="[provide status id here]">GO TO LIST</button>
将 @RequestParam int statusId
更改为 @RequestParam(value="yourButton") int statusId
。
这将适用于旧版 IE 浏览器 - 我认为低于版本 10。这些版本将 return 'GO TO LIST' 而不是值。
作为解决方法,您可以使用隐藏的输入,它也必须放在表单部分内。
我一直在寻找可以帮助我解决此问题但未成功的东西。我需要的只是通过按下 Button 元素来调用 Spring 控制器,并从中传递一个 RequestParam(在这种特定情况下为 "statusId")。有没有办法不使用 JavaScript 来做到这一点?
我有下一个html:
<div class="tablero col-lg-4 col-md-4 col-sm-6">
<div class="inner-content">
<div class="rate">
<div class="number">
<span>${package}</span>
<span class="text">REFERRALS</span>
</div>
</div>
<div class="description">
<h3>
<i class="fa fa-shopping-bag"></i>
PACKAGE
</h3>
<label>Paquete</label>
<button class="btn-primary" onclick="location.href='listReferred.htm' id="package">GO TO LIST</button><!--The parameter should be send from this button-->
</div>
</div>
</div>
和 Spring MVC 控制器:
@SuppressWarnings("unchecked")
@RequestMapping(value="/listReferred", method=RequestMethod.GET)
public String getListReferredPage(@RequestParam int statusId, Model model) {
RestTemplate restTemplate = new RestTemplate();
String url = URL_REFERREDTYPE_JSON+statusId;
List<SearchProspectTO> searchProspectToList = restTemplate.getForObject(url, List.class, statusId);
model.addAttribute("searchProspectToList", searchProspectToList);
return "portalInternoReferidos";
}
至少用表单包围按钮元素,如下所示:
<form action="listReferred" method="get">
<button...
</form>
向按钮添加名称和值属性:
<button name="yourButton" value="[provide status id here]">GO TO LIST</button>
将 @RequestParam int statusId
更改为 @RequestParam(value="yourButton") int statusId
。
这将适用于旧版 IE 浏览器 - 我认为低于版本 10。这些版本将 return 'GO TO LIST' 而不是值。
作为解决方法,您可以使用隐藏的输入,它也必须放在表单部分内。