jQuery MiniUI

 找回密码
 立即注册
查看: 7885|回复: 10
打印 上一主题 下一主题

ContextMenu多个li 绑定事件,取对象问题 [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2014-5-30 14:53:33 |只看该作者 |倒序浏览
本帖最后由 harvey 于 2014-5-30 14:53 编辑

我想要ContextMenu
  1. <li iconCls="icon-add" onclick="onItemClick">增加</li>        
  2.                         <li iconCls="icon-edit" onclick="onItemClick">修改</li>
  3.                 <li iconCls="icon-remove" onclick="onItemClick">删除</li>        
复制代码
li里面的onclick每个通过获取对象来绑定事件,不然我有多个li节点就要写多个onclick在页面上感觉重复不太好。
还有我看了ContextMenu DataGrid有禁用、隐藏节点的方法,但是我是从一个DIV弹出来的把右键事件用左键来代替,我该怎样得到对象禁用节点像ContextMenu DataGrid了。

Rank: 8Rank: 8

沙发
发表于 2014-6-3 10:06:54 |只看该作者
不明白你要什么效果
你现在是在什么控件上弹出菜单的?

Rank: 2

板凳
发表于 2014-6-4 18:46:49 |只看该作者
本帖最后由 harvey 于 2014-6-4 18:48 编辑
felt 发表于 2014-6-3 10:06
不明白你要什么效果
你现在是在什么控件上弹出菜单的?

1 首先我要通过ContextMenu对象得到每个li的 onclick,onclick="onItemClick" 不要这样写死在里面。
2 我要在div弹出菜单,而且像ContextMenu DataGrid一样有节点禁用,节点隐藏控制。
我该咋写,请指点

Rank: 8Rank: 8

地板
发表于 2014-6-5 09:34:06 |只看该作者
harvey 发表于 2014-6-4 18:46
1 首先我要通过ContextMenu对象得到每个li的 onclick,onclick="onItemClick" 不要这样写死在里面。
2 我 ...

1.试试监听菜单的onitemclick事件,通过e.item获取到当前点击的menuitem对象

2.只能通过contextmenu那种做法,给item加上name,在beforeopen里面根据name获取到item,再设置隐藏,禁用

Rank: 2

5#
发表于 2014-6-5 15:00:53 |只看该作者
本帖最后由 harvey 于 2014-6-5 15:07 编辑
factory 发表于 2014-6-5 09:34
1.试试监听菜单的onitemclick事件,通过e.item获取到当前点击的menuitem对象

2.只能通过contextmenu那种 ...
  1. <ul id="menui" class="mini-contextmenu" onbeforeopen="onBeforeOpen">
  2.             <li id="Li1" name="public_t"><span>通用的项</span>...
复制代码

跟示例写一样的,为什么我定义了beforeopen方法没执行进来,
弹出ul菜单我是左键弹的而不是右键弹出,在编辑器菜单栏上加的一个按钮。
是我哪里属性没设置吗,请版主指点

Rank: 8Rank: 8

6#
发表于 2014-6-5 15:30:44 |只看该作者
harvey 发表于 2014-6-5 15:00
跟示例写一样的,为什么我定义了beforeopen方法没执行进来,
弹出ul菜单我是左键弹的而不是右键弹出,在编 ...

请做个简单的html页面,高级模式可以上传文件

Rank: 2

7#
发表于 2014-6-5 16:14:09 |只看该作者
本帖最后由 harvey 于 2014-6-5 16:16 编辑
felt 发表于 2014-6-5 15:30
请做个简单的html页面,高级模式可以上传文件



我这里miniui包压缩有4.77M,2年前的

附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

8#
发表于 2014-6-5 17:10:44 |只看该作者
harvey 发表于 2014-6-5 16:14
我这里miniui包压缩有4.77M,2年前的

你的菜单是直接js控制弹出来,不触发before事件
你直接在button的事件里写就是了

Rank: 2

9#
发表于 2014-6-6 11:35:09 |只看该作者
felt 发表于 2014-6-5 17:10
你的菜单是直接js控制弹出来,不触发before事件
你直接在button的事件里写就是了 ...

还有一个问题,我在第三个节点加上子节点,mini.getbyName("remove", menu)为null了,
我改咱去删除节点对象请版主指点
  1. <li name="remove" iconCls="icon-remove" ><span> 删除节点</span>
  2.             <ul>
  3.                 <li>当前日期</li>
  4.                 <li>当前时间</li>
  5.                 <li>人员英文名</li>
  6.             </ul>
  7.             </li>     
复制代码

Rank: 8Rank: 8

10#
发表于 2014-6-6 12:04:58 |只看该作者
harvey 发表于 2014-6-6 11:35
还有一个问题,我在第三个节点加上子节点,mini.getbyName("remove", menu)为null了,
我改咱去删除节点 ...

name="remove"加在span上试试

Archiver|普加软件

GMT+8, 2024-11-25 13:40 , Processed in 1.035332 second(s), 11 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部