用Flex做的登录界面,右键点击登录后的系统托盘后,选择某个菜单,但是flex alert换行不出来

当前访客身份:游客 [
当前位置:
简单做了一个Flexigrid测试,数据装载是没什么问题,右键菜单却怎么也出不来,右击打开的都是IE的菜单,不是说Flexigrid支持右键菜单的吗,问题出在什么地方
&script type=&text/javascript&&
&& & & &$(document).ready(function () {
&& & & & & &var maiheight = document.documentElement.clientH
&& & & & & &var w = $(&#content_right&).width() - 5;
&& & & & & &var gh = $(&#content_right&).height() - 86;
&& & & & & &$(&#grdProList&).flexigrid
&& & & & &({
&& & & & & & &url: 'post4.jsp',//得到JSON数据的URL
&& & & & & & &dataType: 'json',
&& & & & & & &colModel: [
&& & & & & & & & & {display: '数据操作', name: 'ID', sortable: true, width: 80, align: 'center' },
&& & & & & & & & & { display: '职位名称', name: 'NAME', sortable: true, width: 150, align: 'center' },
&& & & & & & & & & { display: '标准职位编号', name: 'STANDARDID', sortable: true, width: 80, align: 'center' },
&& & & & & & & & & { display: '标准职位名称', name: 'STANDARDNAME', sortable: true, width: 100, align: 'center' },
&& & & & & & & & & { display: '排序规则', name: 'ORDERNUM', sortable: true, width: 150, align: 'center' },
&& & & & & & & & & { display: '备注', name: 'BZ', sortable: true, width: 60, align: 'center' }
&& & & & & & & & &],
&& & & & & & &searchitems: [
&& & & & & & &
& { display: '姓名', name: 'NAME', isdefault: true, operater: &like& },
& { display: '职位分类', name: 'JOBNAME', operater: &=& }
&& & & & & & & & &],
&& & & & & & &ShowToggleCol: true,
&& & & & & & &singleSelect: true,
&& & & & & & &sortname: 'ID',
&& & & & & & &sortorder: 'asc',
&& & & & & & &usepager: true,
&& & & & & & &striped: true,
&& & & & & & &title: '企业设置职位信息',
&& & & & & & &useRp: true,
&& & & & & & &rp: 20,
&& & & & & & &usepager: true,
&& & & & & & &showTableToggleBtn: true,
&& & & & & & &showcheckbox: false,
&& & & & & & &rowhandler: contextmenu,//开启右键菜单
&& & & & & & &width: 600,
&& & & & & & &height: 'auto',
&& & & & & & &pagestat: '显示 {from} 到 {to}, 共 {total} 条',
&& & & & & & &procmsg: '请等待数据正在加载中 …',
&& & & & & & &nomsg: '没有数据',
&& & & & & & &onError: '查询出错,请刷新'
&& & & & &});
&& & & & & &function toExcel() {//导出excel
&& & & & & & & &preview();
&& & & & & &}
&& & & & & &function contextmenu(row) {//右键菜单对应方法
&& & & & & & & &var menu = { width: 150, items: [
&& & & & & & & & & & { text: &查看&, icon: &css/images/add.png&, alias: &contextmenu-view&, action: contextMenuItem_click },
&& & & & & & & & & & { text: &编辑&, icon: &css/images/add.png&, alias: &contextmenu-edit&, action: contextMenuItem_click },
&& & & & & & & & & & { text: &删除&, icon: &css/images/add.png&, alias: &contextmenu-delete&, action: contextMenuItem_click },
&& & & & & & & & & & { text: &刷新&, icon: &css/images/add.png&, alias: &contextmenu-reflash&, action: contextMenuItem_click }
&& & & & & & & &]
&& & & & & & & &};
&& & & & & & & &function contextMenuItem_click(target) {
&& & & & & & & & & &var id = $(target).attr(&id&).substr(3);
&& & & & & & & & & &var cmd = this.data.
&& & & & & & & & & &var ch = $.browser.msie ? target.ch : target.getAttribute(&ch&);
&& & & & & & & & & &var cell = ch.split(&_FG$SP_&);
&& & & & & & & & & &if (cmd == &contextmenu-view&) {
&& & & & & & & & & & & &alert(&编辑,产品编号=& + id);
&& & & & & & & & & &}
&& & & & & & & & & &else if (cmd == &contextmenu-edit&) {
&& & & & & & & & & & & &//alert(&编辑,产品编号=& + id);
&& & & & & & & & & & & &location = '/UnitPosition/Edit/' +
&& & & & & & & & & &}
&& & & & & & & & & &else if (cmd == &contextmenu-delete&) {
&& & & & & & & & & & & &var name = cell[11];
&& & & & & & & & & & & &if (confirm(&你确认要删除工作经历信息 [& + name + &] 吗?&)) {
&& & & & & & & & & & & & & &//alert(&删除,产品编号=& + id);
&& & & & & & & & & & & & & &location = '/UnitPosition/Delete/' +
&& & & & & & & & & & & &}
&& & & & & & & & & &}
&& & & & & & & & & &else {
&& & & & & & & & & & & &$(&#grdProList&).flexReload();
&& & & & & & & & & &}
&& & & & & & & &}
&& & & & & & & &$(&#grdProList&).contextmenu(menu);
&& & & & & &}
&& & & & & &function toolbarItem_onclick(cmd, pid) {
&& & & & & & & &if (cmd == &Add&) {
&& & & & & & & & & &alert(&cmd add aaais excuted& + pid);
&& & & & & & & &}
&& & & & & & & &else if (cmd == &Delete&) {
&& & & & & & & & & &alert(&cmd Delete is excuted&);
&& & & & & & & &}
&& & & & & &}
&& & & &}); & & & & & & & & & &
&& &&/script&
&& &&table id=&grdProList& style=&display:&&&/table&
共有1个答案
<span class="a_vote_num" id="a_vote_num_
& rowhandler: contextmenu,//开启右键菜单 
&&&&&&&&&&&&&&&&&&& 没有开启右击绑定事件.
有什么技术问题吗?
类似的话题import flash.events.EventD
public class model extends EventDispatcher
public function model()
test.mxmlXML code
&?xml version="1.0" encoding="utf-8"?&
&mx:Application xmlns:mx="/2006/mxml" layout="absolute" creationComplete="initApp()" xmlns:local="*"&
&mx:Script&
import mx.controls.A
import flash.events.E
internal function initApp():void
p1.addEventListener(MouseEvent.CLICK,pClick,true);
internal function pClick(evn:Event):void
Alert.show("panel clicked","caution");
internal function click():void
var m:model = new model();
m.dispatchEvent(new Event(MouseEvent.CLICK));
&/mx:Script&
&mx:Panel id="p1" x="320" y="71" width="250" height="200" layout="absolute"&
&/mx:Panel&
&mx:Button id="b1" x="148" y="163" label="Button" click="click()" width="98" height="35"/&
&/mx:Application&
------解决方案--------------------因为m.dispatchEvent(new Event(MouseEvent.CLICK));
m是个局部变量而已,跟Panel 没有什么层次关系,所以m派发的事件panel是监听不到的。这样改不知道,你可以接受不:p1.dispatchEvent(new Event(MouseEvent.CLICK));
用panel去派发事件,当然他很容易接受到。注:如果你还想把model当参数在event里面,建议自定义一个event。把model存放在event里面这样的好处,model不用再继承EventDispatcher来派发事件,继承上以后可能会更灵活
------解决方案--------------------感觉LZ化简为烦了,直接p1.dispatchEvent(new Event(MouseEvent.CLICK));
m.dispatchEvent(new Event(MouseEvent.CLICK));该事件的目标M;在概念上,到事件目标的此往返行程被划分为三个阶段:捕获阶段包括从根到事件目标节点之前的最后一个节点的行程,目标阶段仅包括事件目标节点,冒泡阶段包括回程上遇到的任何后续节点到显示列表的根。所以按LZ代码来看,从视图根到M再从M到视图的根,唯一可以触发的是视图根节点上的事件吧!!
如果您喜欢IT行业或者对IT行业感兴趣,想开拓技术视野,欢迎加入本站官方QQ群:,在群里认识新朋友和交流技术^_^
本站联系邮箱:502 Bad Gateway
502 Bad Gateway
nginx/1.8.0flex右键菜单Flex,flex,???
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
flex右键菜单
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口页面导航:
→ 正文内容 给datagrid添加右键菜单项
在Flex中给datagrid添加右键菜单项的具体实现
Flex中如何给datagrid添加右键菜单项,其实很简单,下面有个不错的教程,感兴趣的朋友可以参考下
代码如下: &?xml version="1.0" encoding="utf-8"?& &s:Application xmlns:fx="/mxml/2009" xmlns:s="library:///flex/spark" xmlns:mx="library:///flex/mx" creationComplete="initApp()"& &s:layout& &s:HorizontalLayout horizontalAlign="center" verticalAlign="middle"/& &/s:layout& &fx:Script& &![CDATA[ import mx.controls.A import mx.events.DataGridE import mx.events.FlexE import spark.events.GridE private var myContextMenu:ContextM private function initApp():void { popUpMenu(); } private function popUpMenu():void { myContextMenu = new ContextMenu(); removeDefaultItems(); addCustomMenuItems(); //监听右键菜单弹出后的事件 myContextMenu.addEventListener(ContextMenuEvent.MENU_SELECT, menuSelectedHandler); myDataGrid.contextMenu = myContextM } //删除原有菜单项 private function removeDefaultItems():void { myContextMenu.hideBuiltInItems(); var defaultItems:ContextMenuBuiltInItems = myContextMenu.builtInI defaultItems.print = } //添加用户自定义菜单项 private function addCustomMenuItems():void { var item:ContextMenuItem = new ContextMenuItem("删除行"); //默认的菜单项 item.visible = myContextMenu.customItems.push(item); //监听选择菜单项后的事件 item.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, itemSelectedHandler); } //弹出菜单后的事件处理函数 private function menuSelectedHandler(event:ContextMenuEvent):void { var item:ContextMenuItem = myContextMenu.customItems[0] as ContextMenuI if (myDataGrid.selectedIndex &= 0) { item.visible = } else { item.visible = } } //选择菜单项后的事件处理函数 private function itemSelectedHandler(event:ContextMenuEvent):void { if (myDataGrid.selectedIndex &= 0) { myDataGrid.dataProvider.removeItemAt(myDataGrid.selectedIndex); } } ]]& &/fx:Script& &s:DataGrid requestedRowCount="4" id="myDataGrid" width="500"& &s:columns& &s:ArrayList& &s:GridColumn dataField="dataField1" headerText="列 1" id="col1"&&/s:GridColumn& &s:GridColumn dataField="dataField2" headerText="列 2"&&/s:GridColumn& &s:GridColumn dataField="dataField3" headerText="列 3"&&/s:GridColumn& &/s:ArrayList& &/s:columns& &s:typicalItem& &fx:Object dataField1="示例数据" dataField2="示例数据" dataField3="示例数据"&&/fx:Object& &/s:typicalItem& &s:ArrayList& &fx:Object dataField1="数据1" dataField2="数据1" dataField3="数据1"&&/fx:Object& &fx:Object dataField1="数据2" dataField2="数据2" dataField3="数据2"&&/fx:Object& &fx:Object dataField1="数据3" dataField2="数据3" dataField3="数据3"&&/fx:Object& &fx:Object dataField1="数据4" dataField2="数据4" dataField3="数据4"&&/fx:Object& &/s:ArrayList& &/s:DataGrid& &/s:Application&
上一篇:下一篇:
最 近 更 新
热 点 排 行
12345678910

我要回帖

更多关于 flex alert换行 的文章

 

随机推荐