1

良い一日、

従来のASP内でVBScript、Javascript、およびJScriptを使用しているときに混乱しています。私たちの環境はデフォルトでJScriptを使用していると言われています。
したがって、当社の標準インクルードを使用して空白のページを作成すると、JScriptでコーディングを開始するだけです。

ここで、json2.jsファイルを使用して、着信JSONを解析し、JSONをクライアント/ブラウザーに送信できるようにします。

json2.jsは純粋なJavaScriptなので、特別なことをする必要はないと思いました。しかし、SCRIPTタグの配置に問題があります。基本的に、従来のASPページ内で新しいSCRIPTタグが必要なのはいつどこでしょうか。

「JSON」がnullであるか、「オブジェクトではない」という応答が返されます。そのため、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 に答える