asp.net的treeview右键菜单Context Menus on the TReeView - IE Specific


  原文网址:http://blogs.msdn.com/b/jdixon/archive/2006/01/05/ 509700.aspx
  A few ASP.NET 2.0 TreeView coders were asking for a how to have context menus - per node - on the TreeView control. Well I spent a small amount of time on this and wanted to post one solution. A few caveats:
  a. IE Specific
  b. I never optimized the javascript to use parameters
  Hope this helps soeone achieve what they need. If you find a better solution please feel free to let me know! 
  
  
  
  skin1 {
  cursor:default;
  font:menutext;
  position:absolute;
  text-align:left;
  font-family: Arial,Helvetica,sans-serif;
  font-size: 10pt;
  width:120px;
  background-color:menu;
  border:1solidbuttonface;
  visibility:hidden;
  border:2outsetbuttonhighlight;
  }
  .menuitems {
  padding-left:15px;
  padding-right:10px;
  }
  -->
  
  
  skin1"; 
  var display_url = 1; // Show URLs in status bar?
  function showmenuie5() {
  if (event.srcElement.type != undefined)
  {
  var s  = event.srcElement.id;
  var ind = s.replace("TreeView1t", "");
  s = s.replace("TreeView1t", "TreeView1n"); 
  document.getElementById('one').url = event.srcElement.href;
  document.getElementById('one').innerText = "Select";
  var ch = document.getElementById(s);
  if (ch != null){
  document.getElementById('two').url = "javascript:TreeView_ToggleNode(TreeView1_Data," + ind + "," + s + ",' '," + s + "Nodes)";    
  document.getElementById('two').innerText = "Expand\\Collapse";
  }
  else        
  document.getElementById('two').outerHTML=""
  var rightedge = document.body.clientWidth-event.clientX;
  var bottomedge = document.body.clientHeight-event.clientY;
  if (rightedge 
  
  
  
  
  skin0"onmouseout="lowlightie5()"
  >
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  if (document.all) {
  ie5menu.className = menuskin;
  document.getElementById('TreeView1').oncontextmenu = showmenuie5;
  document.body.onclick = hidemenuie5;
  }
  
  
  

你可能感兴趣的:(treeview)