2013-04-10 102 views
2

我是新來的JavaScript世界,有一個簡單的測試,讀取會話獲得通過JavaScript會話變量瓦爾在javascript:如何從ASP服務器腳本

我的asp文件:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> 
<% 
Session("id")=1234 
Session("code")="ZZ" 
%> 

我的html文件:

<html> 
<head></head> 
<body> 
<script type="text/javascript" src="asp/testSession.asp"> 
    alert("Session ID " + Session("id")); 
</script> 
</body> 

我在做什麼錯?

回答

4

所有ASP代碼必須放置<%%>標籤之間待處理的服務器端:

alert("Session ID " + <%=Session("id") %>); 
         ^^^ add tags  ^^ 

此外,還可以使用<%=作爲快捷方式,以輸出一個變量。這是Response.Write的簡稱。

+0

感謝mellamokb與胺 – user2225394 2013-04-10 18:04:50

1

你不能像你那樣混合使用javascript和asp。 Javascript在本地執行,而asp由服務器編譯,然後發送到您的瀏覽器。

當頁面到達您的瀏覽器時,只有asp編譯的產品保留。爲了使用該值或打印出來,你應該做到以下幾點:

<html> 
<head></head> 
<body> 
<script type="text/javascript" src="asp/testSession.asp"> 
    alert("Session ID " + <%=Session("id")%>); 
</script> 
</body> 
+0

情況並非總是如此。傳統的ASP可以處理服務器端的「JScript」。如果使用語言爲「JScript」和runat =「server」的腳本標記,則該腳本將在服務器端運行,並可與服務器端VBScript代碼進行互操作。請參閱https://support.microsoft.com/en-us/kb/288965 – cchamberlain 2015-11-24 18:04:40