首页 > 编程 > .NET > 正文

ASP.NET技巧:如何在页面之间传递数据量较大的复杂数据?

2024-07-10 13:09:36
字体:
来源:转载
供稿:网友

1.通常我们会用url传值来传递数据量较小的一些数据,如一些参数等,会利用session传递一些全局的会话级的变量。但要窗体之间传递一些较复杂的数据,用session生命周期太长,可能不合适。用url传值,汉字可能出现编码错误,而且可以传递的最大数据量比较有限。
2.我们可以利用模态对话框的dialogarguments属性来实现跨页面的数据传递,
通过如下方式可获得模态对话框的dialogarguments属性:
var variables =  window.dialogarguments
利用该属性可获得模态对话框的传入参数,可以是string, numeric, object, or array value that specifies arguments.尤其是对象或数组型的参数,对于在页面之间传递数据非常有用。举例如下:

传入页面:
<html>
<head>
<script>
 function addnew(meetingid)  {
        var obj=new object();
        obj.name="qiubinchao";
        obj.tel="12345678";        var strurl="../meetingmanage/newmeeting.aspx?id="+meetingid;        window.showmodaldialog(strurl,obj,"dialogheight:700px;dialogwidth=900px;dialogtop=10px;dialogleft:50px;");          window.location="../meetingmanage/meetingpublishedlist.aspx";  }
 </script>
</head>
<body>
<button >launch the window</button>
</body>
</html>
接收页面:
<html>
<head>
<script>
var omyobject = window.dialogarguments;
var name= omyobject.name;
var tel= omyobject.tel;
</script>
<title>untitled</title>
</head>
<body style="font-family: arial; font-size: 14pt; color: snow;
background-color: rosybrown;">
name:
<span style="color:00ff7f">
<script>
document.write(name);
</script>
</span>
<br>
tel:
<span style="color:00ff7f">
<script>
document.write(tel);
</script>
</span>
</body>
</html>

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表