Use RegisterHiddenField than mixing server/js codes:
JavaScript:
<script language="javascript" type="text/javascript">
var vCode = document.getElementById("vCode");
alert(vCode);
</script>
Code behind:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
ViewState("code") = "EE"
Page.ClientScript.RegisterHiddenField("vCode", ViewState("code"))
End Sub
[EDIT]
For more have look on following threads:
Some CP Articles:
ASP.NET Internals: Viewstate and Page Life Cycle[
^]
Beginner's Guide To View State [
^]
Access ViewState Across Pages[
^]
Other site:
Maintaining the ViewState[
^]
ViewState in ASP.NET[
^]