华域联盟 .Net ASP.NET对HTML页面元素进行权限控制(三)

ASP.NET对HTML页面元素进行权限控制(三)

上一篇博客中有些没有考虑到的东西这次更改一下代码如下:

界面前台:

复制代码 代码如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="AdmShowDIV.aspx.cs" Inherits="ExamSystemV3.Manager.RoleManager.AdmShowDIV" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<meta name="Author" content="[email protected]" />

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />

<title></title>

<script src="../../js/DIV/jquery.js" type="text/javascript"></script>

<script src="../../js/DIV/DIV.js" type="text/ecmascript"></script>

<link href="../../css/admin.global.css" rel="stylesheet" type="text/css" />

<link href="../../css/admin.content.css" rel="stylesheet" type="text/css" />

<script type="text/javascript" src="../../../js/jquery.easyui.min.js"></script>

<script type="text/javascript" src="../../js/jquery-1.4.2.min.js"></script>

<script type="text/javascript" src="../../js/jquery.utils.js"></script>

<link href="../../jBox/Skins/Green/jbox.css" rel="stylesheet" type="text/css" />

<script type="text/javascript" src="../../jBox/jquery.jBox-2.3.min.js"></script>

<script type="text/javascript" src="../../js/admin.js"></script>

<script type="text/javascript" src="../../js/SimpleTree.js"></script>

</head>

<body>

<form id="form1" runat="server">

<div class="container">

<div class="location">当前位置:界面元素管理 -> 查看界面元素</div>

<div class="blank10"></div>

<div class="search block">

<div class="h">

<span class="icon-sprite icon-magnifier"></span>

<h3>快速搜索</h3>

</div>

<div class="tl corner"></div><div class="tr corner"></div><div class="bl corner"></div><div class="br corner"></div>

<div class="cnt-wp">

<div class="cnt">

<div class="search-bar" id="SelectRole">

<label class="txt-green">请选择界面:</label>

<asp:DropDownList ID="DdlWindowsName" runat="server" AutoPostBack="True" OnSelectedIndexChanged="DdlWindowsName_SelectedIndexChanged">

</asp:DropDownList>

<a class="btn-lit" href="#" onclick="WindowsInfo()"><span>扫描界面信息</span></a>

</div>

</div>

</div>

</div>

</div>

<div class="block">

<div class="h">

<span class="icon-sprite icon-list"></span>

<h3>界面详情</h3>

</div>

<div class="tl corner"></div>

<div class="tr corner"></div>

<div class="bl corner"></div>

<div class="br corner"></div>

<div class="cnt-wp">

<div class="cnt">

<iframe id="frmWindows" runat="server" frameborder="0" marginheight="0" marginwidth="0" scrolling="auto" style=" display: inline; height: 400px;" width="75%" ></iframe>

<iframe id="frmUpdateDIV" runat="server" frameborder="0" marginheight="0" marginwidth="0" scrolling="auto" style="display: inline; height: 400px; width: 24%;"></iframe>

</div>

</div>

</div>

</form>

</body>

</html>

界面后台:

复制代码 代码如下:

using BLL.Manager.RoleUserManagerBLL;

using System;

using System.Collections.Generic;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

namespace ExamSystemV3.Manager.RoleManager

{

public partial class AdmShowDIV : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

string strLike="";

if (!IsPostBack)

{

//绑定界面

DataBindWindows(strLike);

}

}

/// <summary>

/// 绑定所有界面

/// </summary>

/// <param name="strLike"></param>

public void DataBindWindows(string strLike)

{

DataTable dt = new DataTable();

AdmWindowsManager admWindowsManager = new AdmWindowsManager();

//查出所有的界面

dt = admWindowsManager.QueryWindowInfo(strLike);

//绑定界面信息

DdlWindowsName.DataSource = dt;

DdlWindowsName.DataValueField = "Id";

DdlWindowsName.DataTextField = "WindowsName";

DdlWindowsName.DataBind();

}

protected void DdlWindowsName_SelectedIndexChanged(object sender, EventArgs e)

{

DataTable dt = new DataTable();

string strLike = "";

AdmWindowsManager admWindowsManager = new AdmWindowsManager();

//查出界面的信息

dt = admWindowsManager.QueryWindowInfo(strLike);

string strWindowsId=DdlWindowsName.SelectedValue.ToString().Trim();

strLike = "Id='"+strWindowsId+"'";

DataRow[] rows =dt.Select (strLike);

//获得路径

string strURL = rows[0]["WindowsURL"].ToString ();

strURL = "../../" + strURL;

frmWindows.Attributes["src"]=strURL;

frmUpdateDIV.Attributes["src"] = "AdmUpdateDIV.aspx?WindowsID='" + strWindowsId + "'";

}

}

}

JS:

复制代码 代码如下:

var WindowsID;

function WindowsInfo() {

//获取ifrm

var frmWindows = document.getElementById("frmWindows").contentWindow;

//获取界面ID

WindowsID = document.getElementById("DdlWindowsName").value;

var rootboxs = frmWindows.document.getElementById("main");

var child = rootboxs.childNodes;

findchildbox(child);

};

//搜寻子节点

function findchildbox(parentNode) {

for (var i = 0; i < parentNode.length; i++) {

if (parentNode[i].nodeName == "BOX") {

var childboxId = parentNode[i].id;

var childboxTitle = encodeURI(parentNode[i].title);

var parentbox = findparentbox(parentNode[i].parentNode);

var parentboxId = parentbox.id;

if (window.XMLHttpRequest) {

//IE7 above,firefox,chrome^^

xmlhttp = new XMLHttpRequest();

//为了兼容部分Mozillar浏览器,当来自服务器响应开头不是xml,导致的无法响应问题

if (xmlhttp.overrideMimeType) {

xmlhttp.overrideMimeType('text/xml');

}

}

else if (window.ActiveXObject) {

//IE5\IE6

xmlhttp = new activeXObject("Microsoft.XMLHTTP");

}

if (xmlhttp == null || xmlhttp == undefined) {

alert("con't create XMLHttpRequest Object");

}

////注册回调函数

//xmlhttp.onreadystatechange = callback;

//发送信息

xmlhttp.open('GET', '../../Manager/RoleManager/AddBox.ashx?childboxId=' + childboxId + '&childboxTitle=' + childboxTitle + '&parentboxId=' + parentboxId+'&windowsId='+WindowsID, true);

xmlhttp.send(null);

//function callback() {

// //判断交互是否完成,是否正确返回

// if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {

// }

//}

}

findchildbox(parentNode[i].childNodes)

}

}

//查询父节点

function findparentbox(child) {

if (child.nodeName == "BOX") {

return child;

} else {

return findparentbox(child.parentNode)

}

}

一般处理程序:

复制代码 代码如下:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using BLL.Manager.RoleUserManagerBLL;

using System.Data;

using System.Text;

using Model;

using BLL;

namespace ExamSystemV3.Manager.RoleManager

{

/// <summary>

/// AddBox 的摘要说明

/// </summary>

public class AddBox : IHttpHandler

{

public void ProcessRequest(HttpContext context)

{

context.Response.ContentType = "text/plain";

System.Threading.Thread.Sleep(1000);

DIVEntity EDiv = new DIVEntity();

TR_WindowsDIVEntity EWindowsDiv = new TR_WindowsDIVEntity();

AdmDIVManager admDIVManager = new AdmDIVManager();

PublicBLL publicBll = new PublicBLL();

///收集信息

string strChildBoxId = "";

string strChildBoxTitle = "";

strChildBoxId = context.Request.QueryString["childboxId"].ToString().Trim();

strChildBoxTitle = context.Server.UrlDecode(context.Request.QueryString["childboxTitle"].ToString().Trim());

string strWindowsId = context.Request.QueryString["windowsId"].ToString().Trim();

string strParentBoxId=context.Request.QueryString["parentboxId"].ToString ().Trim();;

string strState = "是";

string strDateTime = publicBll.GetDate();

string strIP = publicBll.GetWebClientIp();

string strOperator ="xvshu";//context.Session["UserNo"].ToString().Trim(); ;

//给实体类赋值

EDiv.Id = strChildBoxId;

EDiv.MainRelation = strParentBoxId;

EDiv.DIVName = strChildBoxTitle;

EDiv.DIVDescribe = strChildBoxTitle;

EDiv.Operator = strOperator;

EDiv.OperatorIP = strIP;

EDiv.State = strState;

EDiv.DateTime = strDateTime;

//给WindowsDIV实体类赋值

EWindowsDiv.DIVID = strChildBoxId;

EWindowsDiv.WindowsID = strWindowsId;

EWindowsDiv.IsVisible = "是";

EWindowsDiv.Operator = strOperator;

EWindowsDiv.OperatorIP = strIP;

EWindowsDiv.DateTime = strDateTime;

//添加DIV

admDIVManager.AddDIV(EDiv,EWindowsDiv);

}

public bool IsReusable

{

get

{

return false;

}

}

}

}

您可能感兴趣的文章:

  • ASP.NET对HTML页面元素进行权限控制(一)
  • ASP.NET对HTML页面元素进行权限控制(二)
  • Asp.net动态生成html页面的方法分享
  • Asp.net 动态加载用户自定义控件,并转换成HTML代码
  • asp.net(C#) 动态添加非ASP的标准html控件(如添加Script标签)
  • 利用ASP.NET技术动态生成HTML页面
  • asp.net 图片验证码的HtmlHelper
  • asp.net替换和恢复html特殊字符
  • ASP.NET 页面刷新的实现方法(包括html,js)
  • asp.net HTML文件上传标签
  • asp.net下URL网址重写成.html格式、RSS、OPML的知识总结
  • asp.net正则表达式删除指定的HTML标签的代码
  • ASP.NET动态增加HTML元素的方法实例小结

本文由 华域联盟 原创撰写:华域联盟 » ASP.NET对HTML页面元素进行权限控制(三)

转载请保留出处和原文链接:https://www.cnhackhy.com/52922.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部