MenuItem是一个菜单上面的文本项,指定一段静态的文本,通常作为菜单的头或者不同组之间的分隔符。
表 30.94. 构件信息
| Component Type | org.operamasks.faces.widget.TextMenuItem |
| Component Family | javax.faces.Output |
| Component Class | org.operamasks.faces.component.widget.menu.UITextMenuItem |
| Tag Class | org.operamasks.faces.webapp.widget.UITextMenuItemTag |
| Renderer Type | org.operamasks.faces.widget.TextMenuItem |
| Renderer Class(AJAX) |
+java.lang.Object
++javax.faces.component.UIComponent
+++javax.faces.component.UIComponentBase
++++javax.faces.component.UIOutput
+++++javax.faces.component.html.HtmlOutputText
++++++org.operamasks.faces.component.widget.menu.base.UITextMenuItemBase
+++++++org.operamasks.faces.component.widget.menu.UITextMenuItem
表 30.95. 属性
| activeClass | 定义类 | org.operamasks.faces.component.widget.menu.UITextMenuItem | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件在激活状态时的样式类 | ||||
| binding | 定义类 | javax.faces.component.UIComponentBase | ||
| 类型 | javax.el.ValueExpression(javax.faces.component.UIComponent) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 一个值表达式,用于把该组件链接到一个ManagedBean的某个属性。 | ||||
| converter | 定义类 | javax.faces.component.UIOutput | ||
| 类型 | java.lang.String | |||
| 是否必须 | 否 | 延时求值 | 否 | |
| 构件注册的转换器 | ||||
| disabledClass | 定义类 | org.operamasks.faces.component.widget.menu.UITextMenuItem | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件在不可用时的CSS样式类 | ||||
| id | 定义类 | javax.faces.component.UIComponentBase | ||
| 类型 | java.lang.String | |||
| 是否必须 | 否 | 延时求值 | 否 | |
| 这个组件的组件标识符。这个值在最近的命名容器类型的父组件范围内,必须是唯一的。 | ||||
| image | 定义类 | org.operamasks.faces.component.widget.menu.UITextMenuItem | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 菜单项的图标 | ||||
| label | 定义类 | org.operamasks.faces.component.widget.menu.UITextMenuItem | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 菜单项的文本内容 | ||||
| onclick | 定义类 | org.operamasks.faces.component.widget.menu.UITextMenuItem | ||
| 类型 | javax.el.ValueExpression(java.lang.String) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 构件被点击时执行的JavaScript代码 | ||||
| rendered | 定义类 | javax.faces.component.UIComponentBase | ||
| 类型 | boolean(boolean) | |||
| 是否必须 | 否 | 延时求值 | 是 | |
| 一个标志,指出该组件是否要在任何随后的form提交过程中被渲染或处理。 这个属性的缺省值是true。 | ||||
| value | 定义类 | javax.faces.component.UIOutput | ||
| 类型 | java.lang.String | |||
| 是否必须 | 否 | 延时求值 | 否 | |
| 构件的当前值 | ||||
下面例子介绍了w:menuItem的用法,有一个"文件"的菜单,因为操作比较多,所以用w:menuItem把菜单分为两类:"操作"和"其他",这样菜单看起来比较清晰:
<w:menuBar id="mymenu" action="#{MenuBean.menuAction}"
autoExpand="false">
<w:menu label="文件">
<w:menuItem label="操作"></w:menuItem>
<w:commandMenuItem label="新建" />
<w:commandMenuItem label="打开..." />
<w:commandMenuItem label="保存" />
<w:commandMenuItem label="另存为..." disabled="true" />
<w:menuItem label="其他"></w:menuItem>
<w:linkMenuItem label="关闭" value="../index.html" onclick="return confirm('Are you sure?')" />
</w:menu>
</w:menuBar>