FineUI 官方论坛

标题: 可能是树 的右键菜单bug [打印本页]

作者: owenhy    时间: 2016-2-1 21:54
标题: 可能是树 的右键菜单bug
按照专业版范例写的树的右键菜单。菜单显示异常。浏览器的菜单没有隐藏。比对了几次没发现例子中特别的设置。

[attach]8524[/attach]

代码如下:
  1. <asp:Content ID="Content2" ContentPlaceHolderID="detail" runat="server">
  2.   <f:RegionPanel ID="RegionPanel1" ShowBorder="false" runat="server">
  3.         <Regions>
  4.         <f:Region ID="Region1" Split="true"    ShowHeader="false"  EnableCollapse="true"      runat="server"     Layout="Fit" Position="Left" Width="250px" >            
  5.                 <Items>
  6.                      <f:TabStrip ID="TabStrip1"  ShowBorder="true" TabPosition="Top"  EnableTabCloseMenu="false" ActiveTabIndex="0"  runat="server"     Width="250px"  RegionPosition="Center"     >
  7.                             <Tabs>   
  8.                                 <f:Tab ID="Tab1" Title="品号分类" BodyPadding="5px" Layout="Fit"    runat="server">                 
  9.                                     <Items>
  10.                                         <f:Tree ID="flyTreeView"  EnableCollapse="true"  OnNodeLazyLoad="Tree1_NodeLazyLoad" OnNodeCommand="Tree1_NodeCommand"      RegionSplit="false"
  11.                                                  Width="250px" Title="品号分类" ShowBorder="true" ShowHeader="false"    BodyPadding="10px" runat="server"  AutoLeafIdentification="false" AutoScroll="true"  >
  12.                                             <Listeners>
  13.                                                 <f:Listener Event="beforenodecontextmenu" Handler="onTreeNodeContextMenu" />
  14.                                             </Listeners>
  15.                                         </f:Tree>
  16.                                     </Items>
  17.                                 </f:Tab>   
  18.                                 <f:Tab ID="Tab2" Title="查询" BodyPadding="5px" Layout="Fit"    runat="server">                 
  19.                                     <Items>  
  20.                         
  21.                                    </Items>
  22.                                 </f:Tab>               
  23.                             </Tabs>
  24.                      </f:TabStrip>   
  25.              </Items>
  26.          </f:Region>
  27.          <f:Region ID="Region2" Split="true"    runat="server"  EnableCollapse="true"  Layout="Fit" Position="Center" ShowHeader="false">
  28.                 <Items>
  29.                
  30.                 <f:Form ID="SimpleForm1" ShowBorder="true" ShowHeader="false" AutoScroll="true" BodyPadding="3px"
  31.                     runat="server" Height="150px" RegionPosition="Center"  Layout="Region"   >
  32.                     <Toolbars>
  33.                         <f:Toolbar ID="Toolbar1" runat="server">
  34.                             <Items>
  35.                
  36.                             </Items>
  37.                         </f:Toolbar>
  38.                     </Toolbars>  
  39.                     <Items>
  40.                         <f:Grid ID="Grid_Main"   EnableCollapse="false" PageSize="10"
  41.                                         AllowPaging="true" AutoScroll="true" runat="server" EnableCheckBoxSelect="true"
  42.                                     ShowPagingMessage="true" DataKeyNames="OID,RowValue" IsDatabasePaging="true" AllowCellEditing="false"
  43.                                     EnableMultiSelect="false"    OnRowDataBound="GridDetail_RowDataBound"    Title="品号明细"
  44.                                     ShowBorder="true" ShowHeader="true"  RegionPosition="Center"    >
  45.                                     <Columns>
  46.                                     </Columns>
  47.                         
  48.                         </f:Grid>

  49.                        
  50.                     </Items>
  51.                </f:Form>
  52.                </Items>
  53.        </f:Region>
  54.      
  55.     </Regions>
  56.   </f:RegionPanel>
  57.   <f:Menu ID="Menu1" runat="server">
  58.             <Items>
  59.                 <f:MenuButton ID="btnExpandNode" EnablePostBack="false" runat="server" Text="展开全部">
  60.                                       <Listeners>
  61.                         <f:Listener Event="click" Handler="onExpandNode" />
  62.                     </Listeners>
  63.                 </f:MenuButton>
  64.                 <f:MenuButton ID="btnCollapseNode" EnablePostBack="false" runat="server" Text="折叠全部">
  65.                                      <Listeners>
  66.                         <f:Listener Event="click" Handler="onCollapseNode" />
  67.                     </Listeners>
  68.                 </f:MenuButton>
  69.             </Items>
  70.             <Listeners>
  71.                 <f:Listener Event="show" Handler="onMenuShow" />
  72.             </Listeners>
  73.    </f:Menu>
  74. </asp:Content>
  75. <asp:Content ID="Content3" ContentPlaceHolderID="footer" runat="server">
  76.      <script>
  77.          ///此变量将传递给母模板的脚本处理
  78.          var gridClientID = '<%= Grid_Main.ClientID %>';

  79.          F.ready(function () {

  80.          })

  81.          var treeID = '<%= flyTreeView.ClientID %>';
  82.          var menuID = '<%= Menu1.ClientID %>';
  83.          // 保存当前菜单对应的树节点ID
  84.          var currentNodeId;

  85.          // 返回false,来阻止浏览器右键菜单
  86.          function onTreeNodeContextMenu(event, nodeId) {
  87.              currentNodeId = nodeId;
  88.              F(menuID).show();
  89.              return false;
  90.          }

  91.          // 设置所有菜单项的禁用状态
  92.          function setMenuItemsDisabled(disabled) {
  93.              var menu = F(menuID);
  94.              $.each(menu.items, function (index, item) {
  95.                  item.setDisabled(disabled);
  96.              });
  97.          }

  98.          // 显示菜单后,检查是否禁用菜单项
  99.          function onMenuShow() {
  100.              if (currentNodeId) {
  101.                  var tree = F(treeID);
  102.                  var nodeData = tree.getNodeData(currentNodeId);
  103.                  if (nodeData.leaf) {
  104.                      setMenuItemsDisabled(true);
  105.                  } else {
  106.                      setMenuItemsDisabled(false);
  107.                  }
  108.              }
  109.          }

  110.          function onExpandNode() {
  111.              if (currentNodeId) {
  112.                  F(treeID).expandNode(currentNodeId, true);
  113.              }
  114.          }

  115.          function onCollapseNode() {
  116.              if (currentNodeId) {
  117.                  F(treeID).collapseNode(currentNodeId, true);
  118.              }
  119.          }
  120.      
  121.      </script>

  122.   </asp:Content>
复制代码











欢迎光临 FineUI 官方论坛 (https://fineui.com/BBS/) Powered by Discuz! X3.4