我正在开发应用程序,我希望使用Cache将数据从一个传递到另一个。在第一页是.aspx页面,我有一个文本框控件和一个按钮控件。在按钮控制点击事件我写了以下代码:
protected void btnSubmit_Click(object sender, EventArgs e)
{
try
{
if (!string.IsNullOrEmpty(txtName.Text.Trim()))
{
Cache["Name"] = txtName.Text;
Response.Redirect("Test.html");
}
}
catch (Exception ex)
{
throw (ex);
}
}
现在在Target页面上,即Test.html,我编写了以下代码来获取缓存值
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function () {
//var name = GetParameterValues('ID');
//var name = '<%= session.getAttribute("Name") %>';
var name = (string)["Name"];
alert(name);
});
但此代码无效。请帮帮我。
答案 0 :(得分:1)
你应该从服务器端获取缓存值而不是客户端(Javascript)
所以它应该是:
var name = '<%=Cache["Name"] %>';
顺便说一句。你的test.html应该是* .aspx网站,这样asp引擎可以解析它。
或者如果它是完全不同的应用程序传递数据,你不能使用缓存!
实现此POST
或GET
方法的一种方法。