<%@ Register TagPrefix="iewc" Namespace="Microsoft.Web.UI.WebControls" Assembly="Microsoft.Web.UI.WebControls, Version=1.0.2.226, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
<%@ Page language="c#" Codebehind="AllotPopedom.aspx.cs" AutoEventWireup="false" Inherits="ERP.system.Access.AllotPopedom" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>AllotPopedom</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio 7.0">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<LINK href="../../css/main.css" type="text/css" rel="stylesheet">
<script language="javascript">
<!--
function initchecknode()
{
//var node=TreeView1.getTreeNode("0");
//node.setAttribute("Checked","true");
//setcheck(node,"true");
document.AllotPopedom.aaaa.value="";
document.AllotPopedom.bbbb.value="";
}
function tree_oncheck(tree)
{
var node=tree.getTreeNode(tree.clickedNodeIndex);
var Pchecked=tree.getTreeNode(tree.clickedNodeIndex).getAttribute("checked");
setcheck(node,Pchecked);
document.AllotPopedom.aaaa.value="";
document.AllotPopedom.bbbb.value="";
FindCheckedFromNode(TreeView1);
}
function setcheck(node,Pc)
{
var i;
var ChildNode=new Array();
ChildNode=node.getChildren();
if(parseInt(ChildNode.length)==0)
return;
else
{
for(i=0;i<ChildNode.length;i++)
{
var cNode;
cNode=ChildNode[i];
if(parseInt(cNode.getChildren().length)!=0)
setcheck(cNode,Pc);
cNode.setAttribute("Checked",Pc);
}
}
}
function FindCheckedFromNode(node)
{
document.AllotPopedom.aaaa.value="";
document.AllotPopedom.bbbb.value="";
FindCheckedFromNode1(node);
alert(document.AllotPopedom.aaaa.value);
}
function FindCheckedFromNode1(node)
{
// document.TreeViewResult.aaaa.value = "";
// document.TreeViewResult.bbbb.value = "";
var i = 0;
var nodes = new Array();
nodes = node.getChildren();
//alert('Now searching ' + ': ' + node.getAttribute("Text"));
for (i = 0; i < nodes.length; i++) {
var cNode;
cNode=nodes[i];
if (cNode.getAttribute("Checked"))
AddChecked(cNode);
else
AddUnChecked(cNode);
if (parseInt(cNode.getChildren().length) != 0 ) {
FindCheckedFromNode1(cNode);
}
}
//document.all.item(Message).Text = document.TreeViewResult.aaaa.value;
}//设置选定
function AddChecked(node) {
alert(node.getAttribute("Text") + ' is checked');
document.AllotPopedom.aaaa.value += node.getAttribute("NodeData");
document.AllotPopedom.aaaa.value += ',';
//document.AllotPopedom.bbbb.value += node.getAttribute("Text");
//document.AllotPopedom.bbbb.value += ',';
}///处理不选择的项
function AddUnChecked(node) {
//alert(node.getAttribute("Text") + ' is unchecked');
document.AllotPopedom.bbbb.value += node.getAttribute("NodeData");
document.AllotPopedom.bbbb.value += ',';
}
//-->////////////设置父节点下所有的子节点的Check值
function CheckChildren(parentNode,checked)
{
var i;
var len=parentNode.getChildren().length;
var subNode=new Array();
var s;
subNode=parentNode.getChildren();
if(parseInt(subNode.length)!=0)
{
for(i=0;i<subNode.length;i++)
{
var bCheckBox;
bCheckBox=subNode[i].getAttribute("checkbox");
if(bCheckBox!=null)
{
subNode[i].setAttribute("checked",checked);
}
} }
}
////////////根据子节点设置ParentNode的Check值,如果父节点的所有子节点都为选中,则它为选中,否则为非选中
function CheckParentNode(node)
{
var i;
var parentNode=node.getParent();
if(parentNode!=null)
{
var len=parentNode.getChildren().length;
var subNode=new Array();
var s;
subNode=parentNode.getChildren(); bChecked=false;
if(parseInt(subNode.length)!=0)
{
for(i=0;i<subNode.length;i++)
{
var bCheckBox;
var l_bChecked;
bCheckBox=subNode[i].getAttribute("checkbox");
if(bCheckBox!=null)
{
l_bChecked=subNode[i].getAttribute("checked");
if(l_bChecked!=null &&l_bChecked==true)
{
bChecked=true;
break;
}
}
}
}
// alert(bChecked);
parentNode.setAttribute("checked",bChecked);
}
} function checknode(tree)
{
var node;
node=tree.getTreeNode(tree.clickedNodeIndex);
CheckChildren(node,node.getAttribute("checked"));
CheckParentNode(node);
}
</script>
</HEAD>
<body MS_POSITIONING="GridLayout" topmargin="0" leftmargin="0" onload="initchecknode()">
<form id="AllotPopedom" method="post" runat="server">
<table class="over" height="100%" width="100%">
<tr>
<td vAlign="top">
<table align="center">
<tr>
<td><asp:Label id="Message" runat="server"></asp:Label></td>
</tr>
<tr>
<td><iewc:TreeView id="TreeView1" runat="server" SelectExpands="True" ExpandLevel="5"></iewc:TreeView></td>
</tr>
<tr>
<td align="center">
<asp:Button id="btnAllot" runat="server" Text="授权" CausesValidation="False"></asp:Button>
<asp:Button id="btnClose" runat="server" Text="关闭" CausesValidation="False"></asp:Button>
</td>
</tr>
</table>
<asp:Label id="Popedom" runat="server"></asp:Label>
<INPUT type="hidden" id="aaaa" name="aaaa" runat="server"> <INPUT type="hidden" id="bbbb" name="bbbb" runat="server">
<asp:Label id="PopedomName" runat="server"></asp:Label>
</td>
</tr>
</table>
</form>
</body>
</HTML>
<%@ Page language="c#" Codebehind="AllotPopedom.aspx.cs" AutoEventWireup="false" Inherits="ERP.system.Access.AllotPopedom" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>AllotPopedom</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio 7.0">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<LINK href="../../css/main.css" type="text/css" rel="stylesheet">
<script language="javascript">
<!--
function initchecknode()
{
//var node=TreeView1.getTreeNode("0");
//node.setAttribute("Checked","true");
//setcheck(node,"true");
document.AllotPopedom.aaaa.value="";
document.AllotPopedom.bbbb.value="";
}
function tree_oncheck(tree)
{
var node=tree.getTreeNode(tree.clickedNodeIndex);
var Pchecked=tree.getTreeNode(tree.clickedNodeIndex).getAttribute("checked");
setcheck(node,Pchecked);
document.AllotPopedom.aaaa.value="";
document.AllotPopedom.bbbb.value="";
FindCheckedFromNode(TreeView1);
}
function setcheck(node,Pc)
{
var i;
var ChildNode=new Array();
ChildNode=node.getChildren();
if(parseInt(ChildNode.length)==0)
return;
else
{
for(i=0;i<ChildNode.length;i++)
{
var cNode;
cNode=ChildNode[i];
if(parseInt(cNode.getChildren().length)!=0)
setcheck(cNode,Pc);
cNode.setAttribute("Checked",Pc);
}
}
}
function FindCheckedFromNode(node)
{
document.AllotPopedom.aaaa.value="";
document.AllotPopedom.bbbb.value="";
FindCheckedFromNode1(node);
alert(document.AllotPopedom.aaaa.value);
}
function FindCheckedFromNode1(node)
{
// document.TreeViewResult.aaaa.value = "";
// document.TreeViewResult.bbbb.value = "";
var i = 0;
var nodes = new Array();
nodes = node.getChildren();
//alert('Now searching ' + ': ' + node.getAttribute("Text"));
for (i = 0; i < nodes.length; i++) {
var cNode;
cNode=nodes[i];
if (cNode.getAttribute("Checked"))
AddChecked(cNode);
else
AddUnChecked(cNode);
if (parseInt(cNode.getChildren().length) != 0 ) {
FindCheckedFromNode1(cNode);
}
}
//document.all.item(Message).Text = document.TreeViewResult.aaaa.value;
}//设置选定
function AddChecked(node) {
alert(node.getAttribute("Text") + ' is checked');
document.AllotPopedom.aaaa.value += node.getAttribute("NodeData");
document.AllotPopedom.aaaa.value += ',';
//document.AllotPopedom.bbbb.value += node.getAttribute("Text");
//document.AllotPopedom.bbbb.value += ',';
}///处理不选择的项
function AddUnChecked(node) {
//alert(node.getAttribute("Text") + ' is unchecked');
document.AllotPopedom.bbbb.value += node.getAttribute("NodeData");
document.AllotPopedom.bbbb.value += ',';
}
//-->////////////设置父节点下所有的子节点的Check值
function CheckChildren(parentNode,checked)
{
var i;
var len=parentNode.getChildren().length;
var subNode=new Array();
var s;
subNode=parentNode.getChildren();
if(parseInt(subNode.length)!=0)
{
for(i=0;i<subNode.length;i++)
{
var bCheckBox;
bCheckBox=subNode[i].getAttribute("checkbox");
if(bCheckBox!=null)
{
subNode[i].setAttribute("checked",checked);
}
} }
}
////////////根据子节点设置ParentNode的Check值,如果父节点的所有子节点都为选中,则它为选中,否则为非选中
function CheckParentNode(node)
{
var i;
var parentNode=node.getParent();
if(parentNode!=null)
{
var len=parentNode.getChildren().length;
var subNode=new Array();
var s;
subNode=parentNode.getChildren(); bChecked=false;
if(parseInt(subNode.length)!=0)
{
for(i=0;i<subNode.length;i++)
{
var bCheckBox;
var l_bChecked;
bCheckBox=subNode[i].getAttribute("checkbox");
if(bCheckBox!=null)
{
l_bChecked=subNode[i].getAttribute("checked");
if(l_bChecked!=null &&l_bChecked==true)
{
bChecked=true;
break;
}
}
}
}
// alert(bChecked);
parentNode.setAttribute("checked",bChecked);
}
} function checknode(tree)
{
var node;
node=tree.getTreeNode(tree.clickedNodeIndex);
CheckChildren(node,node.getAttribute("checked"));
CheckParentNode(node);
}
</script>
</HEAD>
<body MS_POSITIONING="GridLayout" topmargin="0" leftmargin="0" onload="initchecknode()">
<form id="AllotPopedom" method="post" runat="server">
<table class="over" height="100%" width="100%">
<tr>
<td vAlign="top">
<table align="center">
<tr>
<td><asp:Label id="Message" runat="server"></asp:Label></td>
</tr>
<tr>
<td><iewc:TreeView id="TreeView1" runat="server" SelectExpands="True" ExpandLevel="5"></iewc:TreeView></td>
</tr>
<tr>
<td align="center">
<asp:Button id="btnAllot" runat="server" Text="授权" CausesValidation="False"></asp:Button>
<asp:Button id="btnClose" runat="server" Text="关闭" CausesValidation="False"></asp:Button>
</td>
</tr>
</table>
<asp:Label id="Popedom" runat="server"></asp:Label>
<INPUT type="hidden" id="aaaa" name="aaaa" runat="server"> <INPUT type="hidden" id="bbbb" name="bbbb" runat="server">
<asp:Label id="PopedomName" runat="server"></asp:Label>
</td>
</tr>
</table>
</form>
</body>
</HTML>
解决方案 »
- 报表怎么传递参数啊
- 如何使用updatepanel 加快页面显示速度
- gridiew导出excel时,有些电脑不行,不知道为什么,请高手帮忙
- 谁知道treeview加载时默认不要展开跟节点??
- 4000圆的笔记本能进行.net的web页面开发吗?
- 如何弹出新窗口,并刷新父页?
- 在一个页a.aspx中有按钮btn1可不可以执行页b.aspx中的一段代码,可不可以用__doPostBack()来做呢,我用这种写法不能执行啊(好象是自已写得
- 请问从两个oracle数据库中取数据放入sql server数据库中供网页查询,该如何实现?
- 在c#中如何执行oracle的sql文件创建包和包体
- 请问如何做一个类似ComBox的Web控件?
- 值得所有国人看一看的文章!!!!敢冒降誉风险开此贴!!!!!!!!!!!
- asp.net 怎么判断点击的是TreeView的哪个结点
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using ERP.include;
using ERP.system.Access.Business;
using Microsoft.Web.UI.WebControls;namespace ERP.system.Access
{
/// <summary>
/// AllotPopedom 的摘要说明。
/// </summary>
public class AllotPopedom : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Message;
protected Microsoft.Web.UI.WebControls.TreeView TreeView1;
DataSet g_ds = new DataSet();
protected System.Web.UI.WebControls.Button btnAllot;
protected System.Web.UI.WebControls.Button btnClose;
protected System.Web.UI.WebControls.Label Popedom;
protected System.Web.UI.HtmlControls.HtmlInputHidden aaaa;
protected System.Web.UI.HtmlControls.HtmlInputHidden bbbb;
protected System.Web.UI.WebControls.Label PopedomName;
CRole g_Role = new CRole(); private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if (!this.IsPostBack)
{
string m_Role_ID = Request.QueryString["Role_ID"].ToString();
ViewState["Role_ID"] = m_Role_ID;
DataRow m_dr = g_Role.Retrive(m_Role_ID);
Message.Style["Color"] = "red";
Message.Text = "你要授权的角色是:" + m_dr["Role_Name"].ToString();
ViewState["Role_Name"] = m_dr["Role_Name"].ToString();
createTreeView();
TreeView1.Attributes.Add("oncheck","checknode(this)");
btnAllot.Attributes.Add("OnClick","FindCheckedFromNode(TreeView1)");
}
} #region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.btnAllot.Click += new System.EventHandler(this.btnAllot_Click);
this.btnClose.Click += new System.EventHandler(this.btnClose_Click);
this.Load += new System.EventHandler(this.Page_Load); }
#endregion /// <summary>
/// 绑定文件类型树
/// </summary>
private void createTreeView()
{
try
{
CPopedom m_Popedom = new CPopedom();
g_ds = m_Popedom.GetPopedoms();
string m_Root_ID = "0";
iniTree(TreeView1.Nodes,m_Root_ID);
}
catch(Exception ex)
{
throw new Exception(ex.ToString());
}
} /// <summary>
/// 绑定下级树
/// </summary>
private void iniTree(Microsoft.Web.UI.WebControls.TreeNodeCollection Nds,string aParentID)
{
DataView m_dv = new DataView();
string iniId = ""; try
{
string m_ParentID = aParentID;
m_dv.Table = g_ds.Tables[0];
m_dv.RowFilter = " Up_Popedom_ID = "+m_ParentID;
string m_Role_ID = ViewState["Role_ID"].ToString();
foreach(DataRowView drv in m_dv)
{
TreeNode tmpNd = new TreeNode();
iniId = drv["Popedom_ID"].ToString();
tmpNd.ID = drv["Popedom_ID"].ToString();
tmpNd.NodeData = drv["Popedom_ID"].ToString();
tmpNd.CheckBox = true;
if (g_Role.CheckIsExist(m_Role_ID,iniId) == true)
{
tmpNd.Checked = true;
}
else
{
tmpNd.Checked = false;
}
tmpNd.Text = drv["Popedom_Name"].ToString();
Nds.Add(tmpNd);
iniTree(Nds[Nds.Count - 1].Nodes,iniId);
}
}
catch(Exception ex)
{
throw new Exception(ex.ToString());
}
} /// <summary>
/// 关闭窗口
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnClose_Click(object sender, System.EventArgs e)
{
currencyLib.closeWindowNoFresh(this);
} /// <summary>
/// 分配权限
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnAllot_Click(object sender, System.EventArgs e)
{
try
{
string m_Role_ID = ViewState["Role_ID"].ToString();
string m_Value = aaaa.Value;
string tmp_value = m_Value.Substring(0,m_Value.Length -1);
Popedom.Text = tmp_value + "<br>";
Popedom.Text += m_Role_ID; CRole m_Role = new CRole(m_Role_ID);
bool m_ClearRet = false;
m_ClearRet = m_Role.ClearPopedoms();
string m_Message = "给 " + ViewState["Role_Name"].ToString();
if (m_ClearRet == true)
{
bool m_ret = false;
m_ret = m_Role.AddPopedoms(m_Role_ID,tmp_value);
if (m_ret == false)
{
m_Message += " 角色授权失败!";
currencyLib.ShowMessage(this,"信息提示!",m_Message);
}
else
{
//TreeView1.Attributes.Add("oncheck","checknode(this)");
//btnAllot.Attributes.Add("OnClick","FindCheckedFromNode(TreeView1)");
m_Message += " 角色授权成功!";
currencyLib.ShowMessage(this,"信息提示!",m_Message);
TreeView1.Nodes.Clear();
createTreeView();
//string m_ParentPage = "Role.aspx";
//currencyLib.ShowAndCloseWindow(this,"信息提示!",m_Message,m_ParentPage);
}
}
else
{
m_Message = "清空原有权限失败!";
currencyLib.ShowMessage(this,"信息提示!",m_Message);
}
}
catch(Exception ex)
{
throw new Exception(ex.ToString());
}
/*
string[] m_string = tmp_value.Split(',');
for(int i=0;i<m_string.Length;i++)
{
Popedom.Text += m_string.GetValue(i).ToString() + "<br>";
} string m_Value_Name = bbbb.Value;
string tmp_value_Name = m_Value_Name.Substring(0,m_Value_Name.Length -1);
string[] m_stringName = tmp_value_Name.Split(',');
for(int i=0;i<m_stringName.Length;i++)
{
PopedomName.Text += m_stringName.GetValue(i).ToString() + "<br>";
}
*/
} }
}有兴趣的朋友帮我看下,为什么权限只可以增加,而不能修改?