AspGerman Wiki

Es kann hin und wieder vorkommen, daß Response.Write nicht unbedingt das Ergebnis ausgibt, das man sich ursprünglich vorgestellt hat. Der Grund ist meistens, daß man vergißt, daß Response.Write nur einen String ausgeben kann.

Wenn also ein Statement als "Ausgabestring" dortsteht (zB: CStr(1+5)), dann wird das zuerst von VBScript ausgeführt, und dann erst als Endergebnisstring von Response.Write ausgegeben.

Ein Code, der etwas Unerwartetes (False) ausgibt, ist zum Beispiel folgender:

Response.Write "<body bgcolor"="#FFFFFF"">"

Grundsätzlich müssen Hochkommatas in Strings verdoppelt werden. Teuflisch wird es aber, wenn man die Verdoppelung an die falsche Stelle setzt - dann wird es nämlich zum Stringvergleich:

"<body bgcolor" = "#FFFFFF"">"

und das ist natürlich False, weil die Strings nicht gleich sind!

Der Fehler kann aber leicht korrigiert werden:

Response.Write "<body bgcolor=""#FFFFFF"">"

Die Schlußfolgerung: Vorsicht bei Hochkommaverdoppelung in Strings, oder undurchsichtigen Anweisungen im Response.Write Statement.

ScrewTurn Wiki version 2.0.33. Some of the icons created by FamFamFam.