2012-11-29 35 views
-1
var makeModelYearSelect = document.getElementById("<%= MakeModelYearFilterLB.ClientID %>").control; 
var selectedMakeModelYearItems = makeModelYearSelect.get_checkedItems(); 
var selectedMakeModelYearItemIds = []; 


for (var index = 0; index < selectedMakeModelYearItems.length; index++) { 
    selectedMakeModelYearItemIds.push(selectedMakeModelYearItem[index].get_value(index)); 
} 

這是爲什麼發回錯誤Microsoft JScript runtime error: 'selectedMakeModelYearItem' is undefined使用mootools的頁面上的數組迭代中未定義的var錯誤

Mootools不會讓我使用簡單的for ...來進行迭代。

我已經看過它6種方式到星期天,所以我錯過了什麼?

+0

這是你的一次性錯字識別服務! –

+0

順便說一句IMO這是首選的數組迭代技術,所以不用擔心那個 –

回答

2

因爲selectedMakeModelYearItem未定義。

selectedMakeModelYearItems不是。

+2

嗯,一個正確答案downvote。那很有意思。 –

+0

謝謝...我現在覺得很蠢......大聲笑 –

-1

也許你會嘗試調用這個代碼加載berofe頁面。在這種情況下,選擇您嘗試訪問的標記不會呈現,並且無法通過JavaScript訪問。你可以嘗試類似

window.addEventListener("load", 
(function() { 
return function setMakeModelYearFilter() { 
     var makeModelYearSelect = document.getElementById("<%= MakeModelYearFilterLB.ClientID %>").control; 
     var selectedMakeModelYearItems = makeModelYearSelect.get_checkedItems(); 
     var selectedMakeModelYearItemIds = []; 


for (var index = 0; index < selectedMakeModelYearItems.length; index++) { 
    selectedMakeModelYearItemIds.push(selectedMakeModelYearItem[index].get_value(index)); 
} 
    window.removeEventListener('load', setMakeModelYearFilter, false); 
}})() 
, false); 
+0

'selectedMakeModelYearItem'是一個沒有定義的變量,不是一個無法找到的DOM元素。 –

+0

makeModelYearSelect.get_checkedItems();可能是這個依賴於未加載的DOM對象。我不確定。 –

相關問題