在有人点击链接后更改ASP.NET变量

时间:2009-07-31 10:36:44

标签: asp.net asp.net-mvc

我想在有人点击页面上的链接时更改ASP.NET变量。特别是Session [“something”]变量。这意味着我应该在回发后执行此操作,但我不熟悉整个Web开发和ASP.NET MVC,所以我只知道一个带有一些[Accept]属性的重载操作。由于此链接位于主站点上,因此我可以想象只为现有的每个操作添加此类操作,这看起来非常不幸。 Javascript无法访问ASP.NET变量,所以我很遗憾。

此操作链接应该适用于几乎所有操作,我不知道,如何识别,是否已通过此spoecific或其他链接访问(这对我很重要)。这意味着一些后期处理,如


<a href="" onclick="<% Session["location"] = new_value %>" >

有什么想法吗?一段代码?

提前致谢。

1 个答案:

答案 0 :(得分:1)

请记住,asp代码在服务器上执行,并且该代码的任何输出都会添加到HTML中,然后将HTML发送到运行javascript的浏览器。因此,您需要返回服务器以更改会话变量。

链接的代码,

<%= Html.ActionLink("MyLink", "MyAction", "MyController")%>

然后是MyController,

public ActionResult MyAction()
{
    Session["something"] = "New Value";

    return View();
}