在做ASP.NET项目开发时,经常要在页面间传递数据,如选择一个客户等.要实现数据的传递,不管是用服务端实现也好,客户端实现也好,有很多种方法可以实现这样的功能.在我所做过的几个项目中,就实际情况实现这样的功能用过好多方法,但我个人还是喜欢用以下的方法去实现页面间传递数据,尤其是对于数据不是很多的情况下.
如要选择一个客户,需要用到的数据是CustomerID和CustomerName,CustomerID隐藏在页面中,CustomerName用语显示到页面上给用户看,JS代码如下:
主页面
function ShowModelAndReturnString(url,obj1,obj2)
{
var tempObj = new Object();
tempObj.CusID = "";
tempObj.CusName = "";
tempObj.IsChang = false;
window.showModalDialog(url,tempObj,'dialogWidth:600px;dialogHide:200;help:no;center:yes;resizable:no;status:no');
if(tempObj.IsChang)
{
obj1.value = tempObj.CusID;
obj2.value = tempObj.CusName;
}
}
弹出页面:
function returnValue()
{
var myObj = window.dialogArguments;
myObj.CusID = "CustomerID";
myObj.CusName = "CustomerName";
myObj.IsChang = true;
window.close();
}
其中url是弹出页面的相对路径,obj1,obj2分别用语显示CustomerID和CustomerName.
这样就实现了页面间传递数据,用起来很方便,且代码也不复杂,可读性强.