zoukankan
html css js c++ java
Asp.net中,从弹出窗体取选择值
在Asp.net中,从A页面中弹出B页面,在B页面中选择数据后,关闭并将数据更新到A页面,是一种常用 的方式。只是我对Javascript不熟悉,所以捣鼓了一下午,终于有了一点成绩:
测试项目有两个页面:Default.aspx及Default2.aspx,在Default.aspx页面上有一个TextBox1及一个Button1,Button1用于触发Default2.aspx,TextBox1用于接收从子页面传回的值。
Button1的代码如下:
StringBuilder s
=
new
StringBuilder();
s.Append(
"
<script language=javascript>
"
);
s.Append(
"
var a=window.showModalDialog('Default2.aspx');
"
);
s.Append(
"
if(a!=null)
"
);
s.Append(
"
document.all('TextBox1').value=a;
"
);
s.Append(
"
</script>
"
);
Type cstype
=
this
.GetType();
ClientScriptManager cs
=
Page.ClientScript;
string
sname
=
"
lt
"
;
if
(
!
cs.IsStartupScriptRegistered(cstype, sname))
cs.RegisterStartupScript(cstype, sname, s.ToString());
Default2.aspx页面内有一个CheckBoxList1及一个Button1,Button1执行返回选择的CheckBoxList1的值,并将当前页面关闭。
代码如下:
protected
void
Button1_Click(
object
sender, EventArgs e)
{
StringBuilder s
=
new
StringBuilder();
s.Append(
"
<script language=javascript>
"
+
"
\n
"
);
s.Append(
"
window.returnValue='
"
+
this
.GetSelectValue()
+
"
';
"
+
"
\n
"
);
s.Append(
"
window.close();
"
+
"
\n
"
);
s.Append(
"
</script>
"
);
Type cstype
=
this
.GetType();
ClientScriptManager cs
=
Page.ClientScript;
string
csname
=
"
ltype
"
;
if
(
!
cs.IsStartupScriptRegistered(cstype, csname))
cs.RegisterStartupScript(cstype, csname, s.ToString());
}
private
string
GetSelectValue()
{
string
rvalue
=
""
;
for
(
int
i
=
0
; i
<
this
.CheckBoxList1.Items.Count; i
++
)
{
if
(
this
.CheckBoxList1.Items[i].Selected)
{
if
(rvalue
==
""
)
rvalue
+=
this
.CheckBoxList1.Items[i].Text;
else
rvalue
+=
"
,
"
+
this
.CheckBoxList1.Items[i].Text;
}
}
return
rvalue;
}
此时执行程序,在Default2.aspx中不会关闭且不能传回值,很重要的一点:
在head中,加入这一行:
<
base
target
=
"
_self
"
/>
查看全文
相关阅读:
rocketmq学习(一) rocketmq介绍与安装
基于redis的分布式锁实现
SSTI(服务器模板注入)学习
PHP文件包含漏洞(利用phpinfo)复现
ubuntu搭建vulhub漏洞环境
sqli-labs通关教程----51~65关
sqli-labs通关教程----41~50关
sqli-labs通关教程----31~40关
sqli-labs通关教程----21~30关
sqli-labs通关教程----11~20关
原文地址:https://www.cnblogs.com/wjhx/p/777968.html
最新文章
#WebGL 知乎前辈
#常用编程语言数据类型总结概要 #Python#Java#JavaScript#PHP
#npm run serve 指定临时启用端口 #vue指定临时启用端口
#VUE 列表项目置顶过渡动画
#Flexbox 网页布局完全详解
# CSS基础position属性
#CSS基础Block,Inline与Inline-block
#HTML元素居中方法总结
#版本控制发展历史简单了解#Git
#5个常用的CSS单位总结.
热门文章
#blog文章 列表,鼠标hover视差动画特效
# CSS常用selector选择器列举总结
【转载】正向代理与反向代理
8086汇编语言学习(六) 8086处理结构化数据(模拟高级语言结构体、数组)
8086汇编语言学习(五) 8086寻址方式
8086汇编语言学习(四) 8086汇编程序的编译与链接
8086汇编语言学习(三) 8086中的段和栈
8086汇编语言学习(二) 8086汇编开发环境搭建和Debug模式介绍
8086汇编语言学习(一) 8086汇编介绍
rocketmq学习(二) rocketmq集群部署与图形化控制台安装
Copyright © 2011-2022 走看看