如何从asp.net获取JavaScript中应用程序变量的值?

时间:2014-01-31 06:15:32

标签: javascript asp.net

我想在JavaScript中访问应用程序变量的值。我怎么能这样做?

4 个答案:

答案 0 :(得分:1)

在codebehind中声明一个公共属性。

public string firstName = "Sanju";

像这样在JavaScript中访问它。

    <script>
        var myName;
        function GetMyName()
        {
            myName = <%=this.firstName%>
        }
    </script>

要在会话状态中访问值,请使用此。

            myName = '<%=Session["firstName"]%>'

要在“应用程序状态”中访问值,请使用此。

            myName = '<%=Application["firstName"]%>'

答案 1 :(得分:0)

您可以在javascript中将变量设为public。

在代码背后。

public string YourVar = "hello";

在javascript中

alert("<%= YourVar  %>");

注意一旦发送响应,服务器端变量的值将在生成的html / javascript中替换。如果您想在页面加载后从javascript访问它,那么您可能需要使用ajax调用来从服务器获取值。

答案 2 :(得分:0)

以下内容获取渲染控件的ClientID

//markup
<asp:TextBox ID="aTextBox" runat="server" />
<asp:TextBox ID="bTextBox" runat="server" />
<asp:TextBox ID="cTextBox" runat="server" />

//script
var Members =
{
    aTextBox: $("#<%=aTextBox.ClientID %>"),
    bTextBox: $("#<%=bTextBox.ClientID %>"),
    cTextBox: $("#<%=cTextBox.ClientID %>")
}

答案 3 :(得分:0)

尝试会话... 在你的课堂上做一个会话(我假设你有一个General类)并使用它的引用在你想要的任何页面上访问它。但请记住,在使用之前必须先分配一个值。

e.g,

下面是UserID会话。

public static int UserId
{
    get
    {
        if (HttpContext.Current.Session["UserId"] != null)
            return Convert.ToInt32(HttpContext.Current.Session["UserId"]);
        else
            return 0;
    }
    set
    {
        HttpContext.Current.Session["UserId"] = value;
    }
}

首先,您必须在应用程序启动后立即在会话中存储值。

User user = new user(); // consider you have a User class

protected void btnLogin_OnClick(object sender, EventArgs e)
{
    _user.Username = this.txtUserName.Text;
    _user.Password = this.txtPassword.Text;

    if (_user.Validate())
    {
       General.UserID = _user.UserID;  // here you are storing the id of logged in user
       Response.Redirect("~/HomePage.aspx");
    }
    else
    {
       this.labelNotice.Text = "Invalid Username or Password";
    }
}

要在javascript中的任何页面上访问此会话的值,

<%@ Import Namespace="MyProject.Models" %>

<script type="text/javascript">
    var myID;
    function GetMyID() {
        myID= '<%=General.UserId%>';
    }
</script>

我导入了常规类,该类位于 MyProject 解决方案的模型文件夹中。