从JS变量获取数据并在ASP.NET变量中设置

时间:2013-01-25 15:03:21

标签: javascript asp.net

我想将数据从一个用户控件传递到另一个用户控件,但我已经尝试了几件事情,并且没有工作,例如JS中的sessionStorage,ASPX中的Session,以及两者中的cookie。 这个数据是动态的,所以我现在不知道如何将它传输给其他用户控件。

我甚至尝试将aspx代码放在javascript函数中(然后当我单击按钮时它可以触发代码,但它不能正常工作)。 我上面提到的这个按钮是用文字控件写的。

JavaScript函数

此函数是LoadUsers UserControl

  function getID(ID) {
        sessionStorage.setItem("userID", ID);
    }

此功能位于Access UserControl

 function catchIP() {
               var ID = sessionStorage.getItem("userID");
               $('#<%= value.ClientID %>').val(ID);
           }

用户控件

加载用户:

 ...
 string _str = "<a href'#lastAccess' css='btn btn-success' onclick='javascript:getID(" + _id[_contForeach] + "); catchID();'>Access</a>";
 _loadUsers.Controls.Add(new LiteralControl(_str));

访问:

如何在JavaScript函数中访问ID并在不使用Page_Load

的情况下应用它

1 个答案:

答案 0 :(得分:0)

要在服务器端代码和客户端代码(JavaScript)之间传递信息,请使用ajax

<强>的Ajax

所以使用jquery,有类似这样的函数:

$.get('getuserid.aspx', function(response) {
 //Do something with return response
});

然后在getuserid.aspx.cs背后的代码中

private void Page_Load(object sender, System.EventArgs e)
{
    Response.Expires = -1;
    //required to keep the page from being cached on the client's browser

   //set userid

    Response.ContentType = "text/plain";
    Response.Write(userid);
    Response.End();
}