2009-09-26 81 views
1

我有一个经典的asp页面,它封装在iframe中,是一个.net ajax控件。这一切工作正常。但是,我需要做的是如果在.net控件中单击一个按钮,我需要在我的经典asp页面上更新一个会话变量。所以我猜,简单地说,我如何将一个.net页面的变量传递给经典的asp页面?将.net传递给经典的asp页面

我读过一些关于把查询字符串中传递的变量的东西,但这不会工作(我认为),因为当ajax控件更新它不会刷新封装页面。

我可以使用中介页吗?从我的ajax控件中,我可以调用另一个经典的asp页面,然后使用一些代码来更新var?中间页面将永远不会显示。

感谢,R.

回答

2

一种选择是使用从你的.NET AJAX控件中刷新主ASP页:

parent.document.location.href = 'mypage.asp?session_parameter=new_value'; 

里面你的ASP页面,您需要使用上传会话'session_parameter'变量。这不是最好的方法,因为它会导致页面完全刷新,但它会立即更新会话变量。

但正如您所提到的,我宁愿对一些中间ASP页面进行异步JavaScript调用,以根据需要刷新会话。您可以使用XMLHttpRequest对象来实现此目的。

+0

这真的很棒,谢谢:) – flavour404 2009-10-02 02:05:13

3

为了能够在ASP.NET和传统ASP站点中共享会话变量,您需要使asp.net会话对于经典asp应用程序“可读”。 This article描述了如何。

+0

谢谢,我会读一读。 – flavour404 2009-10-02 02:06:18