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
"
/>
查看全文
相关阅读:
观察者模式
饿汉单例模式 and 懒汉单例模式
解决hash冲突之分离链接法
bat处理文件
使用json-org包实现POJO和json的转换
并发修改异常(ConcurrentModificationException)
封装特效记录--持续更新
vue loading组件
vue授权页面登陆之后返回之前的页面
vue 路由权限
原文地址:https://www.cnblogs.com/wjhx/p/777968.html
最新文章
Java并发--volatile关键字
Java并发-Synchronized关键字
Java并发---并发理论
Java并发--基础知识
集合框架-HashMap&HashSet&LinkedHshMap
集合框架-ArrayList&Vector&LinkedList
Project Lombok——带给你简洁、清晰的代码
8个常用的JavaScript数组方法
GCC工具的常用指令
C程序调试与GDB入门
热门文章
HashMap简介以及hashCode写法的建议
Maven简易笔记
系统内存管理简介
快速排序
归并排序
插入排序
springboot整合mybatis
Spring之AOP
springboot之拦截器
springboot中xml配置之@ImportResource
Copyright © 2011-2022 走看看