Ich habe ein Framework in VBScript geschrieben. Innerhalb einer Funktion in diesem Framework wird der Parameter der Funktion auf Nothing in If-Anweisung überprüft und anschließend werden einige Aktionen ausgeführt. Code, der ein in Javascript geschriebenes Framework verwendet. Ich muss also Nothing übergeben, um einige Aktionen ausführen zu können. In IE8 und früheren Versionen funktionierte der nächste Ansatz:
<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>
In IE <9 wird Folgendes ausgegeben: Nichts, Null, Nichts.
In IE9: Nichts, Null, Null.
Wie kann ich in IE9 Nothing von Javascript an VBScript übergeben?
Entschuldigung, ich weiß, dass es hässlich ist, aber ich bin gefangen. Und hasse VBScript.
edit: Es gibt ein Beispiel für eine Framework-Funktion. Ich kann es nicht ändern, weil es in der Anwendung weit verbreitet ist.
Function ExampleFunction(val)
If (val Is Nothing) Then
ExampleFunction = 1
Else
ExampleFunction = 0
End If
End Function
Aktualisieren
Job gekündigt. Fand einen besseren.
IsObject(val) And val Is Nothing
immer noch zu einem Fehler. Sie müssen es in ein verschachteltes If aufteilen.