我正在制作一个需要多选框的表格。我发现this link使用了< @ spring.formMultiSelect路径,选项,属性> ,但文档对我来说并不是很清楚。 有人可以解释什么路径,选项和属性?这将是非常有帮助的。
更多信息: 我尝试使用Spring Boot和Freemarker创建基本表单。我有一个数据库中的用户列表,其名称我想在多选框中显示。我有DAO类从数据库中获取用户名,并有一个显示.ftl页面的控制器类。我是Spring和Freemarker的新手,需要一些指导如何实现< @ spring.formMultiSelect>要完成。
提前致谢!
答案 0 :(得分:0)
示例:
...表格
public class PersonForm {
private String name;
// Getter Setter
}
和控制器......
@Controller
public class Controller{
@GetMapping(value = "/")
public String getPersonForm(Model model){
PersonForm personForm = new PersonForm();
model.addAttribute(personForm);
}
}
askd
<@spring.formInput "personForm.name"
"id='some-id' placeholder='Enter name' class='some-class-for-input'" />
对于这个例子&#34; personForm.name&#34;是路径,第二行是属性字段
在你的示例中,选项是映射类似{&#34; 1&#34;:&#34;男&#34;,&#34; 2&#34;:&#34;女&#34; }
spring.ftl code ...
<#macro formMultiSelect path options attributes="">
<@bind path/>
<select multiple="multiple" id="${status.expression?replace('[','')?replace(']','')}" name="${status.expression}" ${attributes?no_esc}>
<#list options?keys as value>
<#assign isSelected = contains(status.actualValue?default([""]), value)>
<option value="${value}"<#if isSelected> selected="selected"</#if>>${options[value]}</option>
</#list>
</select>
</#macro>