2013-07-22 2 views
0

У меня есть требование, когда я должен искать элементы onkeyup в окне поиска из списка, выбирать несколько и переместить их в другой список. Я написал следующий скрипт, и это работает как ожидается в firefox и не работает в IE9 и хром. Я новичок в jQuery и не могу найти исправление. Может ли кто-нибудь помочь?. Заранее спасибо.jQuery list filter

//HTML// 
<input type="text" id="searchAvailableLabsTxt" class="searchAvailableLabsTxt 
searchbox" onkeyup="filter(this)"/> 
<select multiple="true" runat="server" id="AvailableGroupLab" class=" 
AvailableGroupLab availGrpLabs avalLabs"></select> 
//HTML 

//JQUERY// 
function filter(element) { 
var value = $(element).val().toLowerCase(); 

$(".AvailableGroupLab > option").each(function() { 
    if ($(this).text().toLowerCase().search(value) > -1) { 
     $(this).show(); 
    } 
    else { 
     $(this).hide(); 
    } 
}); 
} 
//JQUERY// 
+0

скрыть/показать варианты не будет работать, как ожидается, в IE –

ответ

0

Проблема с кодом является hide() функция, которая не работает в хроме и IE. Вы можете сохранить копию вариантов, как резервное копирование и удалить параметры с помощью remove()

Live Demo

var options = $(".AvailableGroupLab").clone().html(); 
function filter(element) { 
    $('.AvailableGroupLab').html(options); 
    var value = $(element).val().toLowerCase(); 
    $(".AvailableGroupLab option").each(function() { 
     if ($(this).text().toLowerCase().search(value) == -1) { 
      $(this).remove(); 
     } 
    }); 
} 
+0

Пробовал. Тонкая работа. – Jai

+0

Есть ли какой-либо другой способ, где я могу заставить его работать с IE, Firefox и Chrome ?? – Jai

+0

Проверьте мой обновленный ответ с помощью демонстрации в реальном времени и расскажите мне, как она прошла? – Adil