ASP.NET對(duì)HTML頁(yè)面元素進(jìn)行權(quán)限控制(三)
界面前臺(tái):
<%@ 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="kudychen@gmail.com" />
<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">當(dāng)前位置:界面元素管理 -> 查看界面元素</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">請(qǐng)選擇界面:</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>
界面后臺(tái):
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);
};
//搜尋子節(jié)點(diǎn)
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瀏覽器,當(dāng)來(lái)自服務(wù)器響應(yīng)開(kāi)頭不是xml,導(dǎo)致的無(wú)法響應(yīng)問(wèn)題
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");
}
////注冊(cè)回調(diào)函數(shù)
//xmlhttp.onreadystatechange = callback;
//發(fā)送信息
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)
}
}
//查詢父節(jié)點(diǎn)
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 的摘要說(shuō)明
/// </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(); ;
//給實(shí)體類賦值
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實(shí)體類賦值
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對(duì)HTML頁(yè)面元素進(jìn)行權(quán)限控制(一)
- ASP.NET對(duì)HTML頁(yè)面元素進(jìn)行權(quán)限控制(二)
- Asp.net動(dòng)態(tài)生成html頁(yè)面的方法分享
- Asp.net 動(dòng)態(tài)加載用戶自定義控件,并轉(zhuǎn)換成HTML代碼
- asp.net(C#) 動(dòng)態(tài)添加非ASP的標(biāo)準(zhǔn)html控件(如添加Script標(biāo)簽)
- 利用ASP.NET技術(shù)動(dòng)態(tài)生成HTML頁(yè)面
- asp.net 圖片驗(yàn)證碼的HtmlHelper
- asp.net替換和恢復(fù)html特殊字符
- ASP.NET 頁(yè)面刷新的實(shí)現(xiàn)方法(包括html,js)
- asp.net HTML文件上傳標(biāo)簽
- asp.net下URL網(wǎng)址重寫(xiě)成.html格式、RSS、OPML的知識(shí)總結(jié)
- asp.net正則表達(dá)式刪除指定的HTML標(biāo)簽的代碼
- ASP.NET動(dòng)態(tài)增加HTML元素的方法實(shí)例小結(jié)
相關(guān)文章
在ASP.NET Core中用HttpClient發(fā)送POST, PUT和DELETE請(qǐng)求
這篇文章主要介紹了在ASP.NET Core中用HttpClient發(fā)送POST, PUT和DELETE請(qǐng)求的方法,幫助大家更好的理解和學(xué)習(xí)使用ASP.NET Core,感興趣的朋友可以了解下2021-03-03使用本機(jī)IIS?Express開(kāi)發(fā)Asp.Net?Core應(yīng)用圖文教程
IIS Express是一個(gè)Mini版的IIS,能夠支持所有的Web開(kāi)發(fā)任務(wù),本篇經(jīng)驗(yàn)將和大家介紹使用自定義主機(jī)名來(lái)訪問(wèn)運(yùn)行在IIS?Express上的站點(diǎn)程序的方法,希望對(duì)大家的工作和學(xué)習(xí)有所幫助2023-06-06.NET Web開(kāi)發(fā)之.NET MVC框架介紹
MVC是一種架構(gòu)設(shè)計(jì)模式,該模式主要應(yīng)用于圖形化用戶界面(GUI)應(yīng)用程序。那么什么是MVC?MVC由三部分組成:Model(模型)、View(視圖)及Controller(控制器)2014-03-03防止在服務(wù)器處理完成之前用戶多次點(diǎn)擊提交按鈕處理代碼
在提交表單時(shí),如果網(wǎng)頁(yè)速度過(guò)慢或者其他原因,用戶多次提交能導(dǎo)致數(shù)據(jù)的修改,怎么解決這個(gè)問(wèn)題呢,接下來(lái)將為您解決這個(gè)問(wèn)題,需要的朋友可以了解下2012-12-12ASP.NET使用Subtract方法獲取兩個(gè)日期之間的天數(shù)
本節(jié)主要介紹了ASP.NET使用Subtract方法獲取兩個(gè)日期之間的天數(shù),需要的朋友可以參考下2014-08-082個(gè)頁(yè)面間不通過(guò)Session與url的傳值方式
2個(gè)頁(yè)面間不通過(guò)Session與url的傳值方式...2006-09-09MVC4制作網(wǎng)站教程第三章 添加用戶組操作3.2
這篇文章主要為大家詳細(xì)介紹了MVC4制作網(wǎng)站教程,添加用戶組功能的實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-08-08asp.net 細(xì)說(shuō)文件讀寫(xiě)操作(讀寫(xiě)鎖)
開(kāi)發(fā)過(guò)程中,我們玩玩需要大量與文件交互,讀文件,寫(xiě)文件已成家常便飯,本地運(yùn)行完美,但一上到投產(chǎn)環(huán)境,往往會(huì)出現(xiàn)很多令人措手不及的意外,或開(kāi)發(fā)中的煩惱,因此,我對(duì)普通的C#文件操作做了一次總結(jié)2011-12-12.NET Corek中Git的常用命令及實(shí)戰(zhàn)演練
這篇文章將通過(guò)故事的形式從Git的歷史談起,并講述Git的強(qiáng)大之處。然后通過(guò)實(shí)戰(zhàn)演練教你如何在Github以及碼云上托管我們的代碼并進(jìn)行代碼的版本控制2019-04-04