當代碼var accNo = '<%=Session["hdnAccession"]%>';
將被執行?我更改Page_LoadComplete
事件中的會話變量,但是當我使用var accNo = '<%=Session["hdnAccession"]%>';
訪問它時,它始終返回我設置的第一個值。在Page_LoadComplete
,我喜歡以下... Session["hdnAccession"] = GetNewAccession()
,當我調試時,我看到每次更新Session["hdnAccession"]
。但爲什麼它不會在JavaScript中更新?我處於不能使用HiddenField
而不是Seession
的情況。從JavaScript訪問ASP.NET會話變量
2
A
回答
2
您需要創建一個PostBack來訪問來自JS的會話變量。像這樣:
<script type="text/javascript">
<!--
function setSessionVariable(valueToSetTo)
{
__doPostBack('SetSessionVariable', valueToSetTo);
}
// -->
</script>
private void Page_Load(object sender, System.EventArgs e)
{
// Insure that the __doPostBack() JavaScript method is created...
this.GetPostBackEventReference(this, string.Empty);
if (this.IsPostBack)
{
string eventTarget = (this.Request["__EVENTTARGET"] == null) ? string.Empty : this.Request["__EVENTTARGET"];
string eventArgument = (this.Request["__EVENTARGUMENT"] == null) ? string.Empty : this.Request["__EVENTARGUMENT"];
if (eventTarget == "SetSessionVariable")
{
Session["someSessionKey"] = eventArgument;
}
}
}
1
必須使用一些服務器端控件來做到這一點(如HiddenField或RUNAT =「服務器」隱藏的範圍)。
<%= Session [「hdnAccession」]%>只會在您第一次進入頁面時進行評估,而不是在回發期間進行評估。
+0
我不能使用'HiddenField' – Rauf
0
當頁面呈現時,您的代碼塊正在獲取其值,因此應在客戶端正確看到在Page_Load
或Page_LoadCompleted
中設置的任何值。
如果不是,則必須有其他問題 - 嘗試通過向頁面添加一個臨時屬性來進行測試,在Page_Load
中對其進行初始化並將其寫入客戶端(即var test = "<%=SomeProperty%>";
)。
如果問題發生後才執行回發(這不是很清楚你的問題),你可能不得不使用隱藏的領域。可能還有其他方法可以解決這個問題,但是我看不到您可以實施它們並且無法添加隱藏字段的情況。
相關問題
- 1. ASP.NET MVC3會話變量不可訪問
- 2. ASP.NET:訪問會話變量global.asax
- 3. 在JavaScript中訪問會話變量
- 4. 訪問來自JavaScript的會話變量
- 5. 使用javascript訪問vbscript會話變量
- 6. 訪問會話變量8
- 7. JSTL:訪問會話變量
- 8. 訪問會話變量
- 9. 從jQuery訪問會話變量
- 10. 從webroot訪問cakephp會話變量
- 11. 從類擴展訪問會話變量
- 12. 從WebView訪問會話變量
- 13. 如何在asp.net mvc中使用javascript變量作爲鍵訪問會話變量?
- 14. 如何從ASP.Net中的Base類訪問會話變量?
- 15. 從佈局頁面訪問會話變量ASP.NET MVC3 RAZOR
- 16. 如何從APP_CODE訪問一個asp.net會話變量?
- 17. 會話變量asp.net
- 18. Asp.net會話變量
- 19. 可以從@Page訪問會話變量,但不能從基礎類訪問會話變量
- 20. Asp.net MVC設置會話變量在javascript
- 21. 傳遞ASP.NET會話變量與JavaScript
- 22. 從PHP訪問JavaScript變量
- 23. 從Javascript訪問C#變量?
- 24. 從JavaScript訪問C#變量
- 25. 從JSF訪問Javascript變量
- 26. 從JavaFX訪問Javascript變量
- 27. 在servlet外部訪問會話變量
- 28. Spring框架訪問會話變量
- 29. 模型訪問會話變量?
- 30. Spring MVC 3.0訪問會話變量
你試圖完成什麼? – Arief
是否緩存頁面輸出? –