ASP.NET弹出窗口选择信息的若干情况
来源:互联网 发布:工厂方法模式 java 编辑:程序博客网 时间:2024/05/17 06:31
在ASP.NET中,很多时候需要用到弹出窗口,具体何处使用要看个人需求,废话不多说,直接上示例。
上图为单选,即先弹出一个窗口,选择信息后关闭弹出窗口,然后设置原页面上所需弹窗数据控件内容为所选内容。
上图为多选,即弹出一个窗口后选择所需信息后,不关闭弹出窗口原页面中对应需要获取弹出窗口信息的控件的内容也随之变化。
具体代码如下所示:
原页面:
<SCRIPT language=javascript>/*其中toid为隐藏控件的ID,保存返回的ID,toname为textbox,显示范围的名称。不管是单选还是多选,原页面只有JAVASCRIPT方法*/function group_select(toid,toname){var url= "../../../module/group_select/index.aspx?ToId="+toid+"&ToName="+toname; var mwidth = "400";var mheight = "330";var loc_x,loc_y; if(window.navigator.appName.toLowerCase().indexOf("netscape") > -1){loc_x = parseInt((document.body.clientWidth - mwidth)/2) + 200;loc_y = parseInt((document.body.clientHeight - mheight)/2);window.open(url,"group_select","left=" + loc_x + "px,top=" + loc_y + "px,width=" + mwidth + "px,height=" + mheight + "px,resizable=no,scrollbars=yes,status=0");}else{loc_x=document.body.scrollLeft+event.clientX-event.offsetX-100;loc_y=document.body.scrollTop+event.clientY-event.offsetY+170;window.showModalDialog(url,self,"edge:raised;scroll:1;status:0;help:0;resizable:1;dialogWidth:"+mwidth+"px;dialogHeight:"+mheight+"px;dialogTop:"+loc_y+"px;dialogLeft:"+loc_x+"px");}}</SCRIPT>
弹窗页面单选主要代码(单选):
<html><head> <title>设备</title> <script language=javascript> var parent_window;if(window.navigator.appName.toLowerCase().indexOf("netscape") > -1)parent_window = window.parent.opener;elseparent_window = parent.dialogArguments; function click_place(PartID,PartName){ parent_window.document.getElementById("<% = PartID %>").value = PartID; parent_window.document.getElementById("<% = PartName %>").value = PartName; returnValue="OK"; window.close();/* 关闭窗口 */} </script></head><body class="bodycolor" topmargin="1" leftmargin="0"> <form id="Form1" method="post" runat="server"> <table border="0" cellspacing="0" width="100%" class="small" cellpadding="3" bordercolorlight="#000000" bordercolordark="#ffffff"> <tr class="TableHeader"> <td colspan="2" align="center"> <b><% =FaultType%></b> </td> </tr> <asp:Repeater ID="rptPlace" runat="server"> <ItemTemplate> <tr class="TableLine1"> <td align="left"> <a href="javascript:click_place('<%#Eval("PartID")%>','<%#Eval("PartName")%>');"><%#DataBinder.Eval(Container.DataItem, "PartName")%></a> </td> </tr> </ItemTemplate> <AlternatingItemTemplate> <tr class="TableLine2"> <td align="left"> <a href="javascript:click_place('<%#Eval("PartID")%>','<%#Eval("PartName")%>');"><%#DataBinder.Eval(Container.DataItem, "PartName")%></a> </td> </tr> </AlternatingItemTemplate> </asp:Repeater> </table> </form></body></html>
弹出窗口(多选)
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="index.aspx.cs" Inherits="TollFault.module.group_select.index" %>
<HTML> <HEAD> <title>选择角色</title>
<style> .menulines { CURSOR: hand } </style> <script Language="JavaScript"> var privlist=new Array();<%=strPrivList%>
var parent_window;if(window.navigator.appName.toLowerCase().indexOf("netscape") > -1) parent_window = window.opener;else parent_window = window.dialogArguments;
function click_priv(priv_id){ TO_VAL=parent_window.document.getElementById("<% =ViewState["ToId"] %>").value; TO_NAME=parent_window.document.getElementById("<% =ViewState["ToName"] %>").value; targetelement=document.getElementById("PRIV_"+priv_id); priv_name=targetelement.getAttribute("name");
if(TO_VAL.indexOf(","+priv_id+",")>0 || TO_VAL.indexOf(priv_id+",")==0) { if(TO_VAL.indexOf(priv_id+",")==0) parent_window.document.getElementById("<% =ViewState["ToId"] %>").value=parent_window.document.getElementById("<% =ViewState["ToId"] %>").value.replace(priv_id+",",""); if(TO_VAL.indexOf(","+priv_id+",")>0) parent_window.document.getElementById("<% =ViewState["ToId"] %>").value=parent_window.document.getElementById("<% =ViewState["ToId"] %>").value.replace(","+priv_id+",",","); if(TO_NAME.indexOf(priv_name+",")==0) parent_window.document.getElementById("<% =ViewState["ToName"] %>").value=parent_window.document.getElementById("<% =ViewState["ToName"] %>").value.replace(priv_name+",",""); if(TO_NAME.indexOf(","+priv_name+",")>0) parent_window.document.getElementById("<% =ViewState["ToName"] %>").value=parent_window.document.getElementById("<% =ViewState["ToName"] %>").value.replace(","+priv_name+",",","); borderize_off(targetelement); } else { parent_window.document.getElementById("<% =ViewState["ToId"] %>").value+=priv_id+","; parent_window.document.getElementById("<% =ViewState["ToName"] %>").value+=priv_name+","; borderize_on(targetelement); }}
function borderize_on(targetelement){ color="#003FBF"; targetelement.style.borderColor="black"; targetelement.style.backgroundColor=color; targetelement.style.color="white"; targetelement.style.fontWeight="bold";}
function borderize_off(targetelement){ targetelement.style.backgroundColor=""; targetelement.style.borderColor=""; targetelement.style.color=""; targetelement.style.fontWeight="";}
function begin_set(){ TO_VAL=parent_window.document.getElementById("<% =ViewState["ToId"] %>").value; if(TO_VAL=="ALL_PRIV") { parent_window.document.getElementById("<% =ViewState["ToId"] %>").value=""; parent_window.document.getElementById("<% =ViewState["ToName"] %>").value=""; }
for (step_i=0; step_i<privlist.length; step_i++) { priv_id=privlist[step_i]; if(TO_VAL.indexOf(","+priv_id+",")>0 || TO_VAL.indexOf(priv_id+",")==0) borderize_on(document.getElementById("PRIV_"+privlist[step_i])); }}
function add_all(){ TO_VAL=parent_window.document.getElementById("<% =ViewState["ToId"] %>").value; for (step_i=0; step_i<privlist.length; step_i++) { priv_id=privlist[step_i]; priv_name=document.getElementById("PRIV_"+privlist[step_i]).getAttribute("name");
if(TO_VAL.indexOf(","+priv_id+",")<=0 && TO_VAL.indexOf(priv_id+",")!=0) { parent_window.document.getElementById("<% =ViewState["ToId"] %>").value+=priv_id+","; parent_window.document.getElementById("<% =ViewState["ToName"] %>").value+=priv_name+","; borderize_on(document.getElementById("PRIV_"+privlist[step_i])); } }}
function add_all_priv(){ parent_window.document.getElementById("<% =ViewState["ToId"] %>").value="ALL_PRIV"; parent_window.document.getElementById("<% =ViewState["ToName"] %>").value="全体分组"; parent.close();}
function del_all(){ for (step_i=0; step_i<privlist.length; step_i++) { TO_VAL=parent_window.document.getElementById("<% =ViewState["ToId"] %>").value; TO_NAME=parent_window.document.getElementById("<% =ViewState["ToName"] %>").value; priv_id=privlist[step_i]; priv_name=document.getElementById("PRIV_"+privlist[step_i]).getAttribute("name"); if(TO_VAL.indexOf(priv_id+",")==0) parent_window.document.getElementById("<% =ViewState["ToId"] %>").value=parent_window.document.getElementById("<% =ViewState["ToId"] %>").value.replace(priv_id+",",""); if(TO_VAL.indexOf(","+priv_id+",")>0) parent_window.document.getElementById("<% =ViewState["ToId"] %>").value=parent_window.document.getElementById("<% =ViewState["ToId"] %>").value.replace(","+priv_id+",",","); if(TO_NAME.indexOf(priv_name+",")==0) parent_window.document.getElementById("<% =ViewState["ToName"] %>").value=parent_window.document.getElementById("<% =ViewState["ToName"] %>").value.replace(priv_name+",",""); if(TO_NAME.indexOf(","+priv_name+",")>0) parent_window.document.getElementById("<% =ViewState["ToName"] %>").value=parent_window.document.getElementById("<% =ViewState["ToName"] %>").value.replace(","+priv_name+",",","); borderize_off(document.getElementById("PRIV_"+privlist[step_i])); }}
</script> </HEAD> <body topmargin="1" leftmargin="0" class="bodycolor" onload="begin_set();"> <form id="Form1" method="post" runat="server"> <table border="1" cellspacing="0" width="95%" class="small" cellpadding="3" bordercolorlight="#000000" bordercolordark="#ffffff" align="center"> <tr class="TableContent"> <td class="menulines" onclick="javascript:add_all();" align="center">全部添加</td> </tr> <tr class="TableContent"> <td class="menulines" onclick="javascript:del_all();" align="center">全部删除</td> </tr> <asp:Literal id="litPriv" runat="server"></asp:Literal> </table> </form> </body></HTML>
后台代码
private void LoadData() { string lit = ""; Utilities.DBConnect db = new Utilities.DBConnect(); DataTable dt = db.ExecuteDataTable("Select * from TMobileGroup order by GID"); if (dt == null) { return; } for (int i = 0; i < dt.Rows.Count; i++) { string GID = dt.Rows[i]["GID"].ToString(); string GName = dt.Rows[i]["GName"].ToString(); strPrivList += "privlist[" + i.ToString() + "]=" + GID + ";\r\n"; lit += "<tr class='TableControl'>\r\n"; lit += "<td class='menulines' id='PRIV_" + GID + "' name='" + GName + "' onclick='javascript:click_priv(" + GID + ")' align=left>" + GName + "</td>\r\n"; lit += "</tr>\r\n"; } litPriv.Text = lit; }
这是借鉴思道OA的弹窗做出的。东西简单,不多说了。
- ASP.NET弹出窗口选择信息的若干情况
- Asp.Net alert弹出提示信息的若干种方法
- Asp.Net alert弹出提示信息的若干种方法
- ASP.NET 2.0 中类似QQ的弹出信息窗口
- 转:Asp.Net alert弹出提示信息的若干种方法
- ASP.NET的弹出窗口
- asp.net弹出窗口
- asp.net弹出窗口
- asp .NET弹出窗口
- asp .NET弹出窗口
- asp.net中实现从弹出窗口中选择值
- Asp.net中实现从弹出窗口中选择值
- 实现从弹出窗口中选择值 (asp.net C#)
- asp.net常用的一些弹出窗口
- 在ASP.NET中一个弹出信息窗口及获得焦点的函数
- ASP.Net 弹出提示窗口
- ASP.NET弹出窗口技术
- ASP.NET弹出关闭窗口
- 守护进程
- Fedora 15 快捷操作之新体验
- [MSSQL]生成n位随机字符串
- 软件测试经理评说ISTQB认证价值
- [MSSQL]将十进制转成十六进制
- ASP.NET弹出窗口选择信息的若干情况
- ios 3d
- eclipse中安装jira插件,设置jira
- iOS 5 ARC完全指南——深入浅出全面讲解ARC,整理PDF与大家分享!!!
- 指针与const限定符(Linux C编程)
- SQL中删除多表数据
- [MSSQL]字符串转成16进制函数
- [MSSQL]SQL数字转英文函数
- Jbpm流程管理实例(二)