Sealyu

--- 博客已迁移至: http://www.sealyu.com/blog

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  618 随笔 :: 87 文章 :: 225 评论 :: 0 Trackbacks
今天在完成一个功能时,遇到了一点问题:
使用rich:dataTable显示了一个列表,需要实现的功能是:右键点击row的时候需要弹出contextMenu并且让此行记录被高亮显示。
<rich:contextMenu attached="false" id="fulfillmentItemContextMenu" submitMode="ajax">
xxxxxxxx
</rich:contextMenu>
<rich:dataTable xxxxxxx>
  <rich:column xxxxxx>
  <rich:column xxxxxx>
  <rich:column xxxxxx>
  <rich:componentControl event="onRowContextMenu" for="statusContextMenu" operation="show">
</rich:dataTable>

但是要使此记录被显示的功能是实现在后台bean里面,所以要先执行这个函数之后再弹出对应的菜单。这样就不能使用componentControl来控制了,只能使用a4j:support了。

将对应的componentControl代码改为:
<a4j:support action="#{backBean.selectItem(id)}" event="onRowContextMenu"
   reRender="xxPanel" oncomplete="#{rich:component('xxxxContextMenu')}.doShow(event, {})"/>

注意:richContextMenu的官方文档对这个tag的js函数解释的不是很清楚,也没有对应的例子,这是我在google了好久之后才发现的一个小例子。请注意加粗部分代码的使用。
另附官方对richContextMenu的js函数的说明:

Table 6.113. JavaScript API

FunctionDescriptionApply to
hide() Hides component or group Component, group
show(event, context) Shows component or group Component, group




posted on 2009-03-11 20:22 seal 阅读(954) 评论(4)  编辑  收藏 所属分类: Seam

评论

# re: richfaces 中在点击右键的时候显示contextMenu 2009-05-05 20:11 seam
#{rich:component('xxxxContextMenu')}.doShow(event, {})
正确的应该怎么写

event
context
这2个参数应该传什么

试了很久都出不来

  回复  更多评论
  

# re: richfaces 中在点击右键的时候显示contextMenu 2009-05-06 09:41 seal
你好,如果你想只是显示列表中的内容,我觉得有种更好的方法, 具体你可以看一下RICHFaces自带的例子,如有疑问,欢迎继续交流.
例子地址: http://livedemo.exadel.com/richfaces-demo/richfaces/contextMenu.jsf;jsessionid=D81E0AE7CEDD18CB91FDA41DA1C16115?c=contextMenu&tab=usage
这个on-line demo是学习richfaces的好地方,有空看看  回复  更多评论
  

# re: richfaces 中在点击右键的时候显示contextMenu 2009-05-19 15:59 seam
博主能加我吗
MSN:averting2003@hotmail.com
有很多问题,contextMenu的问题还是没有解决。
实在不知道js函数show(event, context),怎么传参数,不传是出不来的
  回复  更多评论
  

# re: richfaces 中在点击右键的时候显示contextMenu 2009-05-19 16:03 seam
我要的效果
记录行把id传给contextMenu
contextMenu里面的item执行后台带有参数的方法

实际效果:右键点击行记录,弹出contextMenu,里面有修改,查看item项。
点击查看item项,执行后台有参数的bean方法,弹出模态窗口。  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: