Struts 2 选择标签默认值

2022-01-16 00:00:00 java jsp struts2 ognl

我正在使用 Struts 创建一个数据库记录编辑表单.

I'm creating a database record edit form using Struts.

<s:select id="status" name="newRecord.status" list="statusTypes" listKey="id" listValue="description" label="Status:" value="" /><br />

示例列表:

Status' list: 
1 Open 
2 Closed 
3 Pending

我想在状态字段上设置一个默认值作为存储在 record.status 中的当前状态,其中包含字符串表示,例如打开".

I want to set a default value on the status field as the current status which is stored in record.status which contains the string representation e.g. "Open".

如果我设置 value="%{record.status} 它不起作用,因为这不是任何列表键.当我只有字符串表示形式时,有没有办法设置这个值合作吗?

If I set value="%{record.status} it doesn't work because that's not any list key. Is there a way I can set this value when I only have the string representation to work with?

或者我应该将 record.status 重新设计为具有 ID 和 String 的对象吗?

Or should I redesign record.status to be an object with ID and String?

推荐答案

您应该初始化 newRecord.status 的值,该值应该是包含列表键值的单独属性.然后只需设置默认的 value="%{record.status}".当我说属性时,我指的是可通过 OGNL 访问的 bean 属性.

You should initialize the value of the newRecord.status that should be a separate property that contains the list key value. Then simply set the default value="%{record.status}". When I said the property I mean the bean property that is accessible via OGNL.

相关文章