2015-06-19 124 views
-1

我有一种在JSF中创建的菜单类型。单击菜单时如何突出显示菜单

<p:menubar styleClass="menuPrincipal" id="menuBar" > 
 
    <p:menuitem value="Inicio" url="/Inicio.xhtml" style="text-decoration:none" icon="ui-icon-home" id="inicio" /> 
 
    <p:menuitem value="Agregar Excepciones" id="agregarExcepcion" url="/ExcepcionNuevo.xhtml" style="text-decoration:none" rendered='#{excepcionPendienteView.usuarioActual.tipoSolicitante eq "Administrador"}' /> 
 
</p:menubar>



我想,当你点击一个菜单,选中我在哪里工作我的选择。

如果我点击“Inicio”突出显示我的menuItem Inicio,并且如果我点击“Agregar”突出显示我的菜单项“Agregar Excepciones”。试着用Js来做,但我没有做这个函数()。尝试用ajax做,但我发现的例子,使用blockUit与dataTable。

+2

不可能理解你的意思。 – lucasnadalutti

+0

请改善问题。包括你想要达到的目标以及你面临的问题。 – aakashbhowmick

+0

我想要的是可以使用js来记录活动菜单项,但是在菜单上单击时会刷新页面。 –

回答

1

如果你看一下这个标签(here)的文件,你会看到:

url => Url to be navigated when menuitem is clicked. 

这就是为什么你的页面重新加载当您单击某个项目。可能删除此属性将停止重新加载操作的发生。

然后,您可能会想要使用onclickaction加载页面(并标记菜单项)。或者,如果您使用AJAX,则可以使用onstartoncompleteonsuccess

+0

但作为工作,在菜单或页面上使用ajax .xhtml –

+0

您需要执行搜索并阅读材料以进行学习。你可以看到一些展示(http://primefaces.org/showcase-ext/sections/blockui/blockUIAjax.jsf)。基本上,您可以修改页面的特定部分而无需重新加载全部内容。 –

+0

但正如你在菜单上,这个示例函数dataTable.also BlockUit不与menuItem一起使用 –