Javascript 如何使用for循环获取js中的ModelAndView对象?
我想问,我如何通过使用for循环在js中获得ModelAndView对象的值 在控制器中,我写道:Javascript 如何使用for循环获取js中的ModelAndView对象?,javascript,html,spring,jakarta-ee,Javascript,Html,Spring,Jakarta Ee,我想问,我如何通过使用for循环在js中获得ModelAndView对象的值 在控制器中,我写道: @RequestMapping(value="SearchCourse.html", method=RequestMethod.GET) public ModelAndView searchCourse() { ModelAndView model = new ModelAndView("/student/SearchCourse"); model.addObject("schoo
@RequestMapping(value="SearchCourse.html", method=RequestMethod.GET)
public ModelAndView searchCourse() {
ModelAndView model = new ModelAndView("/student/SearchCourse");
model.addObject("schoolList", schoolService.listSchool());
return model;
}
在js中,如果我写:
${
schoolList.get(0).getSchoolname()
}
然后,我可以得到结果
但是,如果我编写了for循环:
var schoolList = new Array();
for(var i = 0; i < "${schoolList.size()}"; i++) {
alert("${schoolList.get("+i+").getSchoolname()}"); //error
}
var schoolList=新数组();
对于(var i=0;i<“${schoolList.size()}”;i++){
警报(${schoolList.get(“+i+”).getSchoolname()}”);//错误
}
然后,我将得到一个错误。
我知道我不能像上面那样编写代码,因为我误用了语法。
但是,如何使用ModelAndView获得js中的学校列表?第一个表达式不是JavaScript,而是jstl表达式。 如果希望访问JavaScript中的模型,则需要为JavaScript变量赋值或将JSON对象返回到请求中。 要将值分配给javascript数组,应执行以下操作:
<script>
var schoolList=new Array();
<c:forEach items="schoolList" var="school">
schoolList[]=${school.schoolname};
</c:forEach>
</script>
var schoolList=新数组();
学校列表[]=${school.schoolname};
请注意,此代码中混合了javascript和jstl。这是一个示例代码,可能有错误
检查以下问题的答案,这些答案与您的类似
谢谢@jny!我自己已经弄明白了。 我们可以简单地使用下面的代码来获取列表并迭代列表
<script>
var schoolList=${schoolList}
for(var i=0;i<schoolList.length;i++) {
alert(schoolList[i].schoolname);
}
</script>
var schoolList=${schoolList}
对于(VarI=0;iuser3362816)提出了类似问题的建议