这些代码全部写在和页面分离的代码页中(codebehind),如果要嵌入到*.aspx页面,可能
这些代码全部写在和页面分离的代码页中(codebehind),如果要嵌入到*.aspx页面,可能
会出现问题.
1.打开新窗口
这个简单:Response.Write(@"<script
language='javascript'>window.open('url');</script>");
2.关闭窗口
//关闭当前窗口,并提示用户时候关闭,yes关闭,no退出
Response.Write(@"<script language='javascript'>window.close();</script>");
//延迟关闭窗口(下面代码表示2秒后关闭,无需确认)
Response.Write(@"<script
language='javascript'>setTimeout('self.close()',2000);</script>");
3.延迟时间
这个和上面的没有多少区别.我用到的情况是,在用户操作完毕给出提示,"n秒后,页面
转向"之类的只需去掉2重的Self.close()即可
Response.Write(@"<script
language='javascript'>setTimeout('',2000);</script>");
4.弹出提示或警告窗口
Response.Write(@"<script language='javascript'>alert('添加成功,2秒钟后页面
将自动跳');</script>");
5.刷新其他页面
这个用到的情况还是不少.比如在B页面对数据更新和修改,另一页面A要保持最新数据
给客户,这是就要在对B操作完毕的情况下对A进行刷新:
Response.Write(@"<script language='javascript'>window.opener.location.
href='./default.aspx'</script>") ;
6.页面跳转
有时候在学要给出提示的情况下进行页面跳转,不能使用Response.Redirect("url");
比如,当客户操作完毕,单击按钮提交,弹出提示框(使用上面3和4),如果使用了
Response.Redirect("url");
那么页面将不给出提示,页就是3和4没有起作用就直接转向了.
如果你是下面的操作过程:
1).Response.Write(@"<script language='javascript'>alert('添加成功,2秒钟后页
面将自动跳');</script>");
2).Response.Write(@"<script
language='javascript'>setTimeout('',2000);</script>");
3).页面转向:
Response.Write("<meta http-equiv='refresh'
content='0;URL=./default.aspx'>");
//这个我不知道用javascript怎么实现,熟悉的轻补充一下
7.窗口传制问题
这个问题比较烦,打开模态窗口(ShowModelDialog)我还没有实现,请各位补充.
具体情况是这样的,比如说A打开一个新窗口B,当用户对B操作完毕后,我们获得必要的
数据,自动将其赋给A中的TextBox等控件,这个过程是在客户端完成的.就像发送邮件时,
需要从地址本中选取,然后将选中的发送地址传回来.
1).在A中加入如下代码,打开一个新窗口B.
Response.Write(window.">@"window.
open('B.aspx','','toolbar=no,menubar=no,status=yes,location=no,
resizable=no,scrollbars=no,width=500,height=350');</script>");
2).对B操作完毕,获得必要数据tmpStr,然后将其赋值给A中的TextBox1
Response.Write(@"<script
language='javascript'>opener.document.all.TextBox1.value
='" +tmpStr+"';</script>");
注意:这个过程是在客户单用javascript完成的,因此我们不能按照服务端的编程习惯
以及不能使用web服务控件的服务端属性进行操作.TextBox1是一个web服务控件,
其id为TextBox1,A页面被服务器解析为html,通过浏览器浏览,TextBox1就变成了
纯html控件,我们这里用javascript操作的也就是html控件,因此赋值使用的是
TextBox1的value属性而不是Text属性.另外,web服务器控件的id被解析成html后,
id有时会变,我们只要注意使用服务器解析后的id就成了,在浏览器中右键->查看源文件
即可得到
对第七种操作情况最好使用打开模态窗口windows.ShowModelDialog(),但是比较麻烦,
哦还没有实现.
接上:
调整本窗口大小和位置
Response.Write("<script>window.resizeTo(500,400);</script>");
Response.Write("<script>window.moveTo(300,200);</script>");
接上:
补:使用模态窗口传值
主要代码如下:
a.aspx and a.aspx.cs
<%@ Page language="c#" Codebehind="a.aspx.cs" AutoEventWireup="false"
Inherits="Genesis02.a" %>
<HTML>
<HEAD>
<title>a</title>
<SCRIPT language="javascript">
var str;
function pop(url)
{
var myDialog = document.a.TBoxType.value;
if (window.showModalDialog)
{
str=window.showModalDialog(url,myDialog,"dialogHeight:
300px; dialogWidth: 500px;center: yes; help: no;resizable: yes; status:
no;");
if (typeof(str) != "undefined")
{
document.a.TBoxType.value = str;
}
}
}
</SCRIPT>
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="a" method="post" runat="server">
<asp:textbox id="TBoxType"
runat="server"></asp:textbox><asp:button id="BtnGetType" Runat="server"
Text="Open"></asp:button>
</form>
</body>
</HTML>
__________________________________________________________________
using System;
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;
namespace Genesis02
{
/// <summary>
/// a 的摘要说明。
/// </summary>
public class a : System.Web.UI.Page
{
protected System.Web.UI.WebControls.TextBox TBoxType;
protected System.Web.UI.WebControls.Button BtnGetType;
private void Page_Load(object sender, System.EventArgs e)
{
if (!IsPostBack)
{
BtnGetType.Attributes["onclick"] = "pop('c.aspx');return
false;";
}
}
#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.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
#################################################################
b.aspx and b.aspx.cs
<%@ Page language="c#" Codebehind="b.aspx.cs" AutoEventWireup="false"
Inherits="Genesis02.b" %>
<HTML>
<HEAD>
<title>b</title>
<SCRIPT language="javascript">
function closeme()
{
//top.returnvalue =
window.document.all.LBoxRFAContent.options[window.document.all.LBoxRFAContent
.selectedindex].value;
top.returnvalue = document.getElementById("TBoxvalue").value;
top.close();
}
function Body_Load()
{
if(window.dialogArguments != null) {
window.document.getElementById("TBoxvalue").value =
window.dialogArguments;
}
}
</SCRIPT>
</HEAD>
<body MS_POSITIONING="GridLayout" >
<form id="b" method="post" runat="server">
<asp:Button id="BtnClose" style="Z-INDEX: 101; LEFT: 152px;
POSITION: absolute; TOP: 131px" runat="server" Text="Close me"></asp:Button>
<asp:TextBox id="TBoxvalue" style="Z-INDEX: 102; LEFT: 149px;
POSITION: absolute; TOP: 69px" runat="server"></asp:TextBox>
</form>
</body>
</HTML>
__________________________________________________________________
using System;
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;
namespace Genesis02
{
/// <summary>
/// b 的摘要说明。
/// </summary>
public class b : System.Web.UI.Page
{
protected System.Web.UI.WebControls.TextBox TBoxvalue;
protected System.Web.UI.WebControls.Button BtnClose;
private void Page_Load(object sender, System.EventArgs e)
{
if (!IsPostBack)
{
BtnClose.Attributes["onclick"] = "closeme();return false;";
}
}
#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.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
#######################################################################
c.aspx and c.asp.cs
<%@ Page language="c#" Codebehind="c.aspx.cs" AutoEventWireup="false"
Inherits="Genesis02.c" %>
<HTML>
<HEAD>
<TITLE>c</TITLE>
</HEAD>
<frameset rows="0,*">
<frame src="about:blank">
<frame src="b.aspx">
</frameset>
</HTML>
____________________________________________________
using System;
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;
namespace Genesis02
{
/// <summary>
/// c 的摘要说明。
/// </summary>
public class c : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
}
#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.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
#############################################################################
c.aspx and c.asp.cs
<%@ Page language="c#" Codebehind="c.aspx.cs" AutoEventWireup="false"
Inherits="Genesis02.c" %>
<HTML>
<HEAD>
<TITLE>c</TITLE>
</HEAD>
<frameset rows="0,*">
<frame src="about:blank">
<frame src="b.aspx">
</frameset>
</HTML>
____________________________________________________
using System;
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;
namespace Genesis02
{
/// <summary>
/// c 的摘要说明。
/// </summary>
public class c : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
}
#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.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
这些代码全部写在和页面分离的代码页中(codebehind),如果要嵌入到*.aspx页面,可能相关推荐
- html游戏代码怎么写,HTML游戏的编写,代码的意思已经写上,请大佬们指导
top of a table game (先按照HTML格式去写开头) 这个标签不会再页面上显示,在源代码码起到装饰的作用) ( | ╱ | ...
- Java代码 怎么写很精简的代码 如何写又短又能满足需求的代码 如何写看起来很NB的代码 代码之极简之道
目录 利用语法 1.利用三元表达式 2.利用 for-each 语句 3.利用 try-with-resource 语句 4.利用 return 关键字 5.利用 static 关键字 6.利用 la ...
- java代码如何写出打印_java - 为什么这个代码向后写,打印“Hello World!”
角色U+202E从右到左镜像代码,但它非常聪明. 隐藏在M中, "class M\u202E{..." 我是如何找到这背后的魔力的? 好吧,起初当我看到我强硬的问题时," ...
- 限制页面只能在框架页中
JavaScript代码 <script language="javascript" type="text/javascript"> if (top ...
- html一个页面分页代码怎么写,纯JS前端实现分页代码
先给大家展示下效果图,如果大家感觉效果不错,请参考实现代码: 因为这是我自己第一次动手用js写分页,写的应该也不是很完美,有些公共的没有抽取出来,但是用起来还是可以的,这块代码是可以把它当做公共的分页 ...
- dynamo方程怎么写_Dynamo代码怎么写?BIM系列之dynamo代码块快速入门
代码块快速入门教程: 1.dynamo等效数字 2.字串 3.顺序 开始..#数量..间距 3.范围 开始..结束..间距 5.取得索引的项目列表: 6.建立清单 7.连接字符串 8.条件陈述语法 9 ...
- 静态页中利用AJAX.NET实现无刷新页面
一. 导言 我们知道,ASP.net应用程序事实是在服务器上运行的,用户的请求要不断地送往远程的服务器,服务器执行完本地的程序后把重新装载页面再发送客户端.所以就出现了不断刷新的问题,页面不断闪烁.用 ...
- 程序员写代码要写注释吗?写你就输了
前言:在职业发展道路上,需要不断提升自己,需要学习资源的,一起学习交流的欢迎加群[443128517],小编准备了学习视频,学习线路,自学书籍,职业发展视频.也可以加美女老师七七的微信.二维码放在下面 ...
- html5中的空格怎么写,空格的代码(【html5空格代码怎么写】)
空格的代码([html5空格代码怎么写]),哪吒游戏网给大家带来详细的空格的代码([html5空格代码怎么写])介绍,大家可以阅读一下,希望这篇空格的代码([html5空格代码怎么写])可以给你带来参 ...
最新文章
- 利用用户级线程提高多线程应用的性能
- 为什么只看重结果_买家下单最看重的三项服务,做好这三点,让你的销量涨涨涨...
- shell脚本循环嵌套
- Linux chapter 7
- 粒子群算法的惩罚函数的c语言实现,粒子群算法结合惩罚函数用于桥式起重机主梁优化.pdf...
- springboot集成钉钉_SpringBoot集成钉钉报警sdk(解决Failed to introspect Class异常)
- android 视频 缩略图,安卓平台生成视频缩略图的几种方法
- ACM International Collegiate Programming Contest, Egyptian Collegiate Programming Contest (ECPC 2015
- 东子破解修改oracle10g的最大连接数
- 线程和进程总结(无坑版)
- 计算机网络方向研究课题,计算机网络安全技术方向论文选题 计算机网络安全技术论文题目如何定...
- angular.js使用路由时,子控制器监听不到父级$boardcast的事件
- 工控领域为什么需要OPC,OPC是什么?
- 文献记录(part107)--Detecting Meaningful Clusters From High-Dimensional Data ...
- Shader学习2——兰伯特
- mysql 权限管理 针对表的字段 级别 授权 columns_priv表
- C++程序设计 重载函数
- centos7 安装Calibre搭建一个家用图书馆
- powered by php168 v6,php168整站系统V6正式版(v6.01)公开下载
- aiku大神归来!送给初学者嵌入式项目实战开发