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 onclick="AddNew();" >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> |