2011-02-10 10 views
11

Używam IE9 beta z kodem testowym poniżej i napotykam błąd 80020102, gdy vbscript próbuje dołączyć do tablicy. Jeśli uruchomię to w trybie dziwactwa, wydaje się, że działa.Błąd IE9 80020102, używanie vbscript Zachowaj słowo kluczowe z doctype strict

Nie wiedząc, czy to jest problem dotyczący MS, czy coś niewłaściwego, robię, przesłałem go do magazynu błędów IE9. Czy ktoś ma sugestię dotyczącą pracy?

Opublikowałabym cały HTML, ale zawsze wygląda na zniekształcony w podglądzie.

-- VBscript part ---  
Function getBlankArray() 
    getBlankArray = Array() 
End Function 

Function appendArray(arr, val) 
    redim preserve arr(ubound(arr) + 1) 
    arr(ubound(arr)) = val 
    appendArray = arr 
End Function 

-- javascript part --- 
function test() 
{ 
    var contextKeysArray = getBlankArray(); 
     var jscontextKeysArray = new Array(); 
    for(var x=0; x < 10; x++) 
    { 

     jscontextKeysArray[x] = x; 

    } 

    for(i = 0; i < jscontextKeysArray.length; i++) 
    { 
      contextKeysArray = (appendArray(contextKeysArray, jscontextKeysArray[i])); 
    } 

} 
+0

Przeczytać http://stackoverflow.com/editing-help w sprawie problemów z formatowaniem. –

+0

Dlaczego mieszasz kod JS i VBScript ??? Trzymanie kodu JS jest lepsze IMHO. W JS możesz wywołać metodę Array.push (val) zamiast tej paskudnej funkcji appendArray (arr, val) VBScript. – CedX

+1

brak błędu w IE8 w trybie ścisłym, tak naprawdę IE9 ma znaczenie zgadzam się z Cédric, oba języki mają swoje zalety, ale w tablicach Javascript na pewno jest lepszy – peter

Odpowiedz

0

Oto kod oczyścić z VBScript:

function test() { 
    var contextKeysArray = [], jscontextKeysArray = []; 
    for (var x = 0; x < 10; x++) { 
     jscontextKeysArray[x] = x; 
    } 

    for (var i = 0; i < jscontextKeysArray.length; i++) { 
     contextKeysArray.push(jscontextKeysArray[i]); 
    } 
} 
1

po prostu spróbować, aby dodać tę linię na górze strony, jeśli za pomocą strony HTML.

<! DOCTYPE html > 
+0

Nieco spóźniony na przyjęcie z tą odpowiedzią - pytanie pyta o wersję beta IE9 , który jest jakiś czas w przeszłości. Z tego pytania zdaje się również dobrze znać tryb dziwactwa i sposób jego uruchomienia. – Spudley