如何在客户端Javascript或JQuery中访问ViewState变量

如何在客户端Javascript或JQuery中访问ViewState变量,javascript,jquery,asp.net,viewstate,Javascript,Jquery,Asp.net,Viewstate,这是否可以访问asp.net web应用程序中客户端javascript或jquery函数的ViewState变量?如果是,那么如何解决?第一个解决方案: public int prtPropertyName { get { return ViewState("PropertyName"); } set { ViewState("PropertyName") = value; } } Public Property prtPropertyName As Integer

这是否可以访问asp.net web应用程序中客户端javascript或jquery函数的ViewState变量?如果是,那么如何解决?

第一个解决方案:

public int prtPropertyName {
    get { return ViewState("PropertyName"); }
    set { ViewState("PropertyName") = value; }
}
Public Property prtPropertyName As Integer
    Get
        Return ViewState("PropertyName")
    End Get
    Set(value As Integer)
        ViewState("PropertyName") = value
    End Set
End Property
您可以使用属性将任何变量从codebehind传递到客户端。 在codebehind中定义
Public
属性:

C#:

public int prtPropertyName {
    get { return ViewState("PropertyName"); }
    set { ViewState("PropertyName") = value; }
}
Public Property prtPropertyName As Integer
    Get
        Return ViewState("PropertyName")
    End Get
    Set(value As Integer)
        ViewState("PropertyName") = value
    End Set
End Property

VB:

public int prtPropertyName {
    get { return ViewState("PropertyName"); }
    set { ViewState("PropertyName") = value; }
}
Public Property prtPropertyName As Integer
    Get
        Return ViewState("PropertyName")
    End Get
    Set(value As Integer)
        ViewState("PropertyName") = value
    End Set
End Property
为属性指定一个值,然后使用以下方法在javascript中获取该值:

<% = prtPropertyName  %>
Javascript:

var strValue = document.getElementById("hfHiddenFieldID");

第三种解决方案:

public int prtPropertyName {
    get { return ViewState("PropertyName"); }
    set { ViewState("PropertyName") = value; }
}
Public Property prtPropertyName As Integer
    Get
        Return ViewState("PropertyName")
    End Get
    Set(value As Integer)
        ViewState("PropertyName") = value
    End Set
End Property

这个不太清楚,但是所有的
ViewStates
都保存在一个由ASP.NET自动创建的隐藏字段中,您可以找到该字段并读取数据。您可以使用此名称和id在页面的源代码中找到此字段:
name=“\uu VIEWSTATE”id=“\uu VIEWSTATE”

是否不可能直接使用它们,就像我们在服务器端使用它们一样?这是可能的,但不是干净的。所有
VIEWSTATE
s都保存在ASP.NET自动创建的隐藏字段中,您可以找到字段并读取数据。您可以在页面的源代码中找到此字段,其名称和id为:
\uuu VIEWSTATE
。没有服务器端字段。会话状态变量呢?对于会话,只需使用
警报(“”)和
警报(“”)在C中。