2011-12-28 3 views
0

Я только что закончил свою первую реализацию SlickGrid на www.werelate.org/wiki/Special:ListPages/Jdfoote1.Фильтр Slickgrid не работает в IE

К сожалению, я получаю отчеты о том, что фильтр не работает на IE. Мне интересно, есть ли известные проблемы с фильтрацией SlickGrid на IE. Вот оскорбительный код:

// Define search filter (currently searches name, birth place, and death place) 
function myFilter(item) { 
var searchWords = getWords(searchString); 
var searchFields = ["name","birthPlace","deathPlace", "birthDate", "deathDate"]; 
if (searchWords){ 
    // Go through each of the words in the search string 
    for (j in searchWords){ 
     var itemFound = false; 
     searchWord = searchWords[j].toUpperCase(); 
     // Make sure that the word is in at least one of the search fields. 
     for (i in searchFields){ 
      if (item[searchFields[i]].toUpperCase().indexOf(searchWord) != -1){ 
       itemFound = true; 
      } 
     } 
     if (itemFound === false){ 
      return false; 
     } 
    } 
} 
    return true; 
} 

// Get all of the words in a search string 
function getWords(wordString){ 
    pattern = /[^, ]+/g; 
    wordArray = wordString.match(pattern); 
    return wordArray; 
} 

Очень большое спасибо!

+0

В Chrome не работает вообще. Об ошибках JS не сообщается. – Tin

+0

Извините - это всего лишь одна очень маленькая часть кода. – Jeremy

ответ

0

Итак, я узнал, что проблема была в моей петле. Я предполагаю, что IE требует петли в формате

for (variable=startvalue;variable<=endvalue;variable=variable+increment) 

Итак, мой

for (j in searchWords) 

сломал вещи, потому что вы не можете перебрать массив, как это. К сожалению. :)