1

再会,

我对何时在经典 ASP 中使用 VBScript、Javascript 和 JScript 感到困惑。有人告诉我,我们的环境默认使用 JScript。
因此,当我们使用公司的标准包含创建一个空白页面时,我们就开始使用 JScript 进行编码。

现在我希望使用 json2.js 文件,以便我可以解析传入的 JSON 并将 JSON 发送到客户端/浏览器。

我不认为我需要做任何特别的事情来使用 json2.js,因为它是纯 javascript。但我在放置 SCRIPT 标签时遇到问题。基本上,在经典 ASP 页面中何时何地需要一个新的 SCRIPT 标记?

我收到“JSON”为空或不是对象的响应。这让我相信 JSON.parse() 方法甚至没有被识别。

谢谢

<script language="javascript" runat="server" src="json2.js"></script>

   <%
         .... ..... some ASP Code in JScript

    %>
    <script language="javascript" runat="server">

        var lngBytesCount
            lngBytesCount = Request.TotalBytes

        var requestBody = BytesToStr(Request.BinaryRead(lngBytesCount));
        //var jsonObject=JSON.parse(\"{"answer":"ok"}\");   

        var jsonObject=JSON.parse(requestBody); 

        Response.ContentType = "application/json";

        for (var i in jsonObject){
            Response.Write(jsonObject[i]);
        }

        //var json = eval(requestBody);
        //Response.Write(json);
        Response.End()

    </script>

    <%
     .... ..... some ASP Code in JScript
4

1 回答 1

1

这取决于您是要使用 json2.js 库客户端还是服务器端。

经典 ASP 是一种支持不同语言的服务器端技术,最流行的是 vbscript 和 jscript。这与可以用 C# 或 VB 编写的 ASP.NET 相同。

<%和标签之间的代码在%>服务器端执行。<script runat="server">此外,在</script>服务器端之间运行代码块。
如果省略该runat="server"部分,它将在客户端运行,并由客户端浏览器执行。

所以回答你的问题,如果你想在服务器端使用它;使用<script runat="server">,如果你想使用它客户端使用<script>

于 2012-04-04T10:39:24.607 回答