谁能告诉我如何在Spring MVC Controller中获取javascript变量值。

var countrySelection = "Country Selection List:\n\n";
       for (var i = 0; i < frm.selectedCountryItems.length; i++)
          if (frm.selectedCountryItems[i].checked){
              countrySelection = countrySelection + frm.selectedCountryItems[i].value + "\n";
          }

       alert(countrySelection);

我想将值countrySelection传递给控制器

最佳答案

您需要将此变量作为参数从发布/获取请求传递到控制器,并在控制器中进行访问,例如:

@RequestMapping(...)
public String getCountySelected(@RequestParam(value = "UR_PARAM_NAME") String param){
   ... code goes here
}

编辑:
如果您没有使用ajax,并且想在提交表单时发送额外的参数:

在带有@Transient批注的表单域类中添加变量,以使spring不会在数据库表中查找匹配的元素。

例如
@Transient
private String countrySelection;
//Setter getter methods

然后在jsp中添加表单隐藏变量,例如:
<form:hidden path="countrySelection"/>

然后使用您的jquery设置$("#countrySelection").value(countrySelection);

在控制器中,您可以使用对象getter方法访问此字符串。

07-24 20:48