我有一个菜单,我想点击菜单,但如果你们知道我的意思,请点击文字。 MenuItem有一个边框,或类似的东西,但当我点击它时,它不会重定向到我想要的页面,除非我点击文本。
是否可以单击整个“按钮”并重定向或执行需要执行的操作?
我的菜单是这样的:
<rich:dropDownMenu showDelay="250" hideDelay="0" submitMode="none">
<f:facet name="label">Tools</f:facet>
<rich:menuItem>
<s:link view="/pages/tools/ppaParameters/PpaParametersEdit.xhtml" value="Parameters" id="PpaParametersId" includePageParams="false" propagation="none"/>
</rich:menuItem>
<rich:menuGroup value="Security">
<rich:menuItem>
<s:link view="/pages/tools/security/ppaModule/PpaModuleEdit.xhtml" value="Module" id="PpaModuleId" includePageParams="false" propagation="none" />
</rich:menuItem>
</rich:menuGroup>
</rich:dropDownMenu>
有一个例子。我需要点击文字才能解决问题。
答案 0 :(得分:2)
这不完美但可以奏效。 你可以使用这样的东西:
<rich:menuItem onclick="location.href='url'">
<h:outputText value="Link 2" />
</rich:menuItem>
这将允许您单击菜单项内的任何位置。
url - 您必须自己添加并添加s:link添加的所有请求参数。例如: http://server/app/page.seam?cid=XX&propogate=xx ...
如果您需要会话ID,可以使用:<s:conversationId>
希望这会有所帮助......
答案 1 :(得分:2)
使用以下方式设置菜单项的样式:
display:block;
例如,rich:menuItem
使用h:link
(而不是s:link
,但应该适用相同的想法):
<rich:menuItem immediate="true">
<h:link value="System" outcome="menu-01" id="menu-01" styleClass="menu-item-link" />
</rich:menuItem>
在CSS中,更改菜单项标签类(.rf-ddm-itm-lbl
):
/* Allow clicking anywhere on a menu item, not just the text. */
.rf-ddm-itm-lbl {
display: block;
}
/* Style the menu to taste. */
a.menu-item-link {
color: #333333 !important;
text-decoration: none !important;
display: block !important;
}
/* Remove space for icons. */
.rf-ddm-emptyIcon, .rf-ddm-emptyIcon {
display: none;
}
请注意display: block;
的两个实例。
答案 2 :(得分:0)
为文本css选择器提供与其父级相同的高度和宽度。或者给按钮提供您给出文本的行为。