ASP.NET 1.0/2.0里用DIV层元素弹出窗体

本文 Bilal Haidar 将带领您如何使用DIV元素来创建弹出的窗体,这种弹出即可以包含简单的HTML元素也可以包含ASP.NET服务器控件,而且在实现过程中没有使用传统的window函数和showModalDialog / showModelessDialog函数(传统的我们使用 window.open,或者showModalDialog 这样的函数来制作弹出窗口--天天注释)

最近我在用ASP.NET1.1技术来开发一个窗体,该窗体包含由三个控件组成的一个面板集合,这个面板用来显示系统信息.可以假想这些控件是一些简单的下拉框,当第一个下拉框选取后,第二个下拉框的值将显示被第一个过滤的结果,同样第三个下拉框将根据第二个下拉框的选择而进行改变显示。

窗体的这个技术通常被用来让终端客户那些不知道ASP.NET技术的人员获取更好的用户体验。

当决定使用这些控件的替代品使用时,您是否用过dropdownlist或者是具有弹出窗体功能的Textbox控件?

好了,我们已经有了一个很好的解决方案:使用TextBox控件并挂钩OnClick事件来触发DIV弹出窗体,包括使用Listbox控件来选择数据的值

一个不使用任何常规popup窗体或者过时的Dropdownlist来完成这个功能

THE HTML WebForm

我们已经建立了一个简单的WebForm,他包含了一些TextBox,每一个TextBox已经附加了OnClick事件,用一段javascript代码来弹出窗体,代码如下:

<%@ Page language="c#"
Codebehind="ParentPage.aspx.cs" AutoEventWireup="false"
Inherits="PopupWithDiv.ParentPage" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
  <title>Parent Page</title>
  <LINK href="main.css" type="text/css" rel="stylesheet">
  <script src="jsPopup.js" type="text/javascript"></script>
  <script language="javascript">
<!--
  // Prevent users from typing any text
  // into the Textbox
  function ProtectBox(e)
  {return false; }
//-->
  </script>
</HEAD>
<body>
  <form id="Form1" method="post" runat="server">
  <!-- Header Section -->
  <div id="header">
<p>Popup Window with DIV Layer</p>
  </div>
  <!-- Body Section -->
  <div id="content">
<table border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
  <td><label for="txtCountry">Country :</label></td>
  <td><asp:TextBox
  id="txtCountry" runat="server" OnKeyDown="return
  ProtectBox(event);" OnClick="PopupArea(event, 'divCountry')"></asp:TextBox></td>
  <td width="50"></td>
  <td><label for="txtCity">City :</label></td>
  <td><asp:TextBox
id="txtCity" runat="server" OnKeyDown="return
ProtectBox(event);" OnClick="PopupArea(event, 'divCity')"></asp:TextBox></td>
</tr>
</table>
  </div>
  <%-- Country --%>
  <div class="popupWindow" id="divCountry">
<table cellSpacing="0" cellPadding="0" width="100%" bgColor="#2557ad" border="0">
<tr>
  <td align="right"><span style="CURSOR: hand"
onclick="jsAreaClose('divCountry')"><img alt="Hide Popup" src="close.gif"
border="0"></span></td>
</tr>
<tr>
  <td>
<asp:ListBox id="lstCountry" runat="server" AutoPostBack="True" width="100%"
rows="10"></asp:ListBox></td>
</tr>
  </table>
  </div>
  <%-- City --%>
<div class="popupWindow" id="divCity">
<table
cellSpacing="0" cellPadding="0" width="100%"
bgColor="#2557ad" border="0">
<tr>
  <td align="right"><span style="CURSOR: hand" onclick="jsAreaClose('divCity')"><img alt="Hide Popup" src="close.gif" border="0"></span></td>
</tr>
<tr>
  <td>
<asp:ListBox id="lsCity" runat="server" AutoPostBack="True" width="100%" rows="10"></asp:ListBox> </td>
</tr>
</table>
  </div>
</form>
</body>
</HTML>

时间: 2024-10-02 17:08:19

ASP.NET 1.0/2.0里用DIV层元素弹出窗体的相关文章

ASP.NET1.0/2.0里用DIV层元素弹出窗体

asp.net 本文 Bilal Haidar 将带领您如何使用DIV元素来创建弹出的窗体,这种弹出即可以包含简单的HTML元素也可以包含ASP.NET服务器控件,而且在实现过程中没有使用传统的window函数和showModalDialog / showModelessDialog函数(传统的我们使用 window.open,或者showModalDialog 这样的函数来制作弹出窗口--天天注释) 最近我在用ASP.NET1.1技术来开发一个窗体,该窗体包含由三个控件组成的一个面板集合,这个

UITableView中cell里的UITextField不被弹出键盘挡住

UITableView中cell里的UITextField不被弹出键盘挡住    本人视频教程系类   iOS中CALayer的使用   效果如下: 源码: EditCell.h 与 EditCell.m // // EditCell.h // Cell // // Created by YouXianMing on 14/12/18. // Copyright (c) 2014年 YouXianMing. All rights reserved. // #import <UIKit/UIKit

js里写一个当前页面弹出登陆框,用来输入用户名和密码并传到另一个页面的方法,求相助!

问题描述 js里写一个当前页面弹出登陆框,用来输入用户名和密码并传到另一个页面的方法,求相助! 解决方案 纯js拼页面--那就在table外面拼个form,加上action等属性 form里再加submit的input点击input,form直接提交到后台,自己后台处理跳转:想直接跳,那就js拿到用户名和密码,直接url带参数传过去window.location.href=""跳转页面?用户名=值&密码=值""

Outlook 2013 在邮件里面点击超链接时弹出&amp;ldquo;组织策略阻止我们为您完成此操作&amp;rdquo;

现象描叙:     在Outlook在邮件里面点击超链接时,打不开超链接页面,弹出如下提示: 这个是因为之前安装了其它浏览器(例如,我安装了360的浏览器),并且设置为了默认浏览器,后来卸载了该浏览器,在Office里面打开超链接时,是按照默认浏览器打开的.这个默认浏览器是之前设置的,而删除了360浏览器后,就会报错. 解决办法: 修改注册表:               1:定位到HKEY_CURRENT_USER\Software\Classes\.html.在默认项上点右键,选择修改,将H

Outlook 2013 在邮件里面点击超链接时弹出“组织策略阻止我们为您完成此操作”

现象描叙:     在Outlook在邮件里面点击超链接时,打不开超链接页面,弹出如下提示: 这个是因为之前安装了其它浏览器(例如,我安装了360的浏览器),并且设置为了默认浏览器,后来卸载了该浏览器,在Office里面打开超链接时,是按照默认浏览器打开的.这个默认浏览器是之前设置的,而删除了360浏览器后,就会报错. 解决办法: 修改注册表:               1:定位到HKEY_CURRENT_USER\Software\Classes\.html.在默认项上点右键,选择修改,将H

asp.net中用javascript实现文本框输入为空 则弹出对话框

问题描述 为了检验文本框的text属性不为空,用js写了functioncheck(){alert("输入信息为空");}然后在cs文件中调用该js函数,this.btnAdd.Attributes["onclick"]="javascript:check();";预期效果:点击btnAdd按钮,检验textbox的text属性,如果输入为空,则弹出警告对话框.实际效果:第一次点击btnAdd按钮时,不会弹出任何对话框,请问为什么?(questi

Visual Studio Code预览版Ver 0.3.0试用体验

当你开始阅读这篇文章时,请先不要把Visual Studio Code和.net.Windows联想到一起,因为VS Code是一个跨平台,支持30多种语言的开箱代码编辑器.不管你是.Net.Java.PHP.Python.TypeScript.Objective-C...还是前端开发者,你都值得拥有.下面,让我们来看一看Visual Studio Code 这个神器吧~  一.Visual Studio Code的下载和安装 Visual Studio Code最新版下载地址,https://

增加网站流量方法之ASP.NET弹出窗口技术

asp.net|弹出窗口|流量 作为Microsoft的最新建立动态Web网站的工具,ASP.NET相对于ASP和JSP在改变原始的Web编程方式方面有了长足的长进.它的代码与页面分离技术(CodeBehind)以及完善的Web服务器控件为程序员提供了一个更加符合传统编程的Web服务器端开发方式.但Web编程还是有着与传统编程不相同的特点,这些特点决定了ASP.NET编程中必须以一些特殊的技巧来完成程序要求,弹出窗口正是这类编程方式的代表.相当多的编程书籍对弹出窗口采取缄默或者一语带过,似乎看不

ASP.net页面局部刷新的情况下,后台代码在满足特定条件下如何弹出一个新的asp.net窗口

问题描述 ASP.net页面局部刷新的情况下,后台代码如何弹出一个新的asp.net窗口,Response.Write("<script>window.open('alarmdialog.aspx','newwindow','height=850,width=1300,top=150,left=500,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no')</script>"