如何在SpringMVC中访问html页面中的模型属性?
我有一个SpringMVC项目,其中的视图是html页面。我正在控制器方法中设置模型属性,但无法在html视图页面上访问它 这是我的控制器方法如何在SpringMVC中访问html页面中的模型属性?,spring,spring-mvc,Spring,Spring Mvc,我有一个SpringMVC项目,其中的视图是html页面。我正在控制器方法中设置模型属性,但无法在html视图页面上访问它 这是我的控制器方法 @RequestMapping(value = "/", method = RequestMethod.GET) public ModelAndView getData() { ModelAndView model =new ModelAndView(); model.addObject("name", "Jack"); model.se
@RequestMapping(value = "/", method = RequestMethod.GET)
public ModelAndView getData() {
ModelAndView model =new ModelAndView();
model.addObject("name", "Jack");
model.setViewName("html/firstLayer.html");
return model;
}
这就是我在html页面中访问它的方式
<script type="text/javascript">
var name1 ='${name}' ;
console.log(name1);
</script>
var name1='${name}';
console.log(name1);
但在控制台上,它正在打印${name},它应该打印Jack。
任何帮助都将不胜感激,谢谢。您不能直接通过Javascript来实现这一点。您需要使用JSP文件来检索已设置的服务器端ModelAndView变量 或者你可以选择一个更好的解决方案
@RequestMapping(value = "/", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public String getData() throws JsonProcessingException {
Map<String, Object> myData = new LinkedHashMap<>();
myData.put("name", "Jacky");
ObjectMapper objectMapper = new ObjectMapper();
return objectMapper.writeValueAsString(myData);
}
这看起来比第一个更干净
您可以查看一些关于此的教程,以更好地了解它是如何工作的在html中,我们可以使用模型值。所以,当加载文档时,名称将作为隐藏字段显示在页面中。使用javascript或jquery我们可以访问它。以下是一个例子:
<input type="hidden" id="name" value='${name}'/>
<script type="text/javascript">
var name"1 = $(#name).val();
console.log(name1);
</script>
var name“1=$(#name).val();
console.log(name1);
您的viewResolver bean是什么样子的?为什么不使用JSP视图?@Mico这是项目要求,我们必须使用html页面ID您可以尝试var name1=“${name}”“@jagga如果必须使用HTML,一个选项是添加另一个RequestMapping,以JSON形式返回数据。然后用JavaScript获取数据。请提供解释。在html中,我们可以使用模型值。所以,当加载文档时,名称将作为隐藏字段显示在页面中。使用javascript或jquery我们可以访问它。请将此添加到您的答案文本中。
<input type="hidden" id="name" value='${name}'/>
<script type="text/javascript">
var name"1 = $(#name).val();
console.log(name1);
</script>