2010-12-03 7 views
3

У меня есть Меню, и я хочу нажать на меню, но не на текст, если вы, ребята, знаете, что я имею в виду. В MenuItem есть граница или что-то в этом роде, но когда я нажимаю на нее, она не будет перенаправляться на страницу, которую я хочу, если не нажму на текст.Нажав на 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> 

Там пример. Мне нужно щелкнуть по тексту, чтобы он работал.

alt text

+0

Когда вы редактируете файл .doc, вы будете иметь меню с «Файл», «Изменить», «Вид», «Справка» и т. Д. Когда вы нажимаете на него, у вас есть некоторые опции, но вам не нужно нажимать на текст «Сохранить», чтобы сохранить документ, вы можете щелкнуть в любом месте кнопки, чтобы выбрать кнопку сохранения, и это все равно спасет. Все еще не понял? – pringlesinn 2011-01-12 14:34:46

ответ

2

Стиля пункт меню с помощью:

display:block; 

Например, для rich:menuItem с использованием h:link (вместо s:link, но sa Me идея должна применяться):

<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;.

0

Либо дать селектор текста CSS одинаковую высоту и ширину, как и его родителя. Или дайте кнопке поведение, которое вы передаете.

2

Это не идеально, но может работать. Вы можете использовать что-то вроде этого:

<rich:menuItem onclick="location.href='url'"> 
    <h:outputText value="Link 2" /> 
</rich:menuItem> 

Это позволит вам щелкнуть в любом месте внутри пункта меню.

url - вам придется поместить его самостоятельно и добавить все параметры запроса, которые добавляются: link. Например: http://server/app/page.seam?cid=XX&propogate=xx ...

Если вам нужен разговор идентификатор, вы можете использовать: <s:conversationId>

Надеется, что это помогает ...

+0

Я попробую прямо сейчас :). thx – pringlesinn 2011-01-11 11:10:32

+0

Одна проблема, мы используем s: link, потому что она не работает должным образом, когда я использую menuItem. Знаете ли вы что-нибудь, что я могу сделать, чтобы поработать с s: link? – pringlesinn 2011-01-11 11:22:10

Смежные вопросы