- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试将多选绑定(bind)到我的对象。表单已创建,帖子可以正常工作,当我不选择任何内容时,不会发生任何错误。如果我选择一种语言,对象将获得语言值,但形式会中断。
HashMap<String, String> languages = new LinkedHashMap<String, String>();
languages.put("eng","english");
languages.put("ger","german");
session.setAttribute("languages", languages);
<@spring.formMultiSelect“advancedSearch.languages”、语言“”/>
AdvancedSearch 类有
字符串语言;
它得到一个值“eng, rus”,但表单在获取值后不起作用。
错误信息
HTTP ERROR 500
Problem accessing /opac/advSearch. Reason:
Expected collection or sequence. list evaluated instead to
freemarker.template.SimpleScalar on line 368, column 12 in spring.ftl. Caused by:
Expected collection or sequence. list evaluated instead to freemarker.template.SimpleScalar on line 368, column 12 in spring.ftl. The
problematic instruction:
==> list list as nextInList [on line 368, column 5 in spring.ftl] in user-directive spring.formMultiSelect [on line 59, column 41 in advancedSearchView.ftl]
我认为问题出在我保存语言的方式上。现在是字符串。我想我需要用其他方式来保持它。我尝试了 String[] List 但无法正常工作。
最佳答案
<@spring.bind "advancedSearch.languages"/>
<#assign selectedLangs = spring.status.value?default(" ")>
<select multiple="multiple" id="${spring.status.expression}" name="${spring.status.expression}"}>
<#list languages?keys as value>
<#if selectedLangs?contains(value) >
<#assign isSelected = true>
<#else>
<#assign isSelected = false>
</#if>
<option value="${value?html}"<#if isSelected> selected="selected"</#if>>${languages[value]?html}
</#list>
</select>
这有效!
关于java - Spring 绑定(bind)形式多选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2425148/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!