IE9 で Javascript から VBScript に何も渡さない 質問する

IE9 で Javascript から VBScript に何も渡さない 質問する

私はVBScriptで書かれたフレームワークを持っています。このフレームワークのいくつかの関数内で、関数のパラメータがチェックされます。何もないもしステートメントが実行され、いくつかのアクションが実行されます。

フレームワークを使用するコードはJavaScriptで書かれています。何もない関数に何らかのアクションを実行する機能を追加します。インターネットエクスプローラー8および以前のバージョンでは、次のアプローチが有効でした。

<script type="text/vbscript">
    Function Test(val)
        If (IsNull(val)) Then
            Test = "Null"
        ElseIf (IsObject(val)) Then
            If (val Is Nothing) Then
                Test = "Nothing"
            End If
        End If
    End Function

    Dim jsNothing
    Set jsNothing = Nothing
    msgBox(Test(jsNothing))
    msgBox(Test(Null))
</script>


<script type="text/javascript">
    alert(Test(jsNothing));
</script>

バージョン 9 より前の Internet Explorer では、出力は Nothing、Null、Nothing になります。

インターネットエクスプローラー9: 何もない、ヌル、ヌル。

Internet Explorer 9 で JavaScript から VBScript に Nothing を渡すにはどうすればよいですか?

フレームワーク関数の例があります。アプリケーションで広く使用されているため、変更できません。

Function ExampleFunction(val)
    If (val Is Nothing) Then
        ExampleFunction = 1
    Else
        ExampleFunction = 0
    End If
End Function

ベストアンサー1

残念ながら、おそらくここで行き詰まってしまうでしょう。JavaScriptには「Nothing」に相当するものがありません。この記事詳細については。

ただし、次の方法は有効です。VBScript コードで、「Nothing」を返す「GetNothing」という関数を作成します。JavaScript コードでは、「var jsNothing = GetNothing()」を使用します。これは、この記事

おすすめ記事