2
我在網絡上找到了此示例how to search in a list box。這聽起來很不錯,但它不適用於IE。任何想法在代碼中改變它以使其在IE中工作?按文字過濾不適用於Internet Explorer
當我開始在文本框中輸入列表框的所有值就會消失。
jQuery.fn.filterByText = function(textbox, selectSingleMatch) {
return this.each(function() {
var select = this;
var options = [];
$(select).find('option').each(function() {
options.push({value: $(this).val(), text: $(this).text()});
});
$(select).data('options', options);
$(textbox).bind('change keyup', function() {
var options = $(select).empty().data('options');
var search = $(this).val().trim();
var regex = new RegExp(search,"gi");
$.each(options, function(i) {
var option = options[i];
if(option.text.match(regex) !== null) {
$(select).append(
$('<option>').text(option.text).val(option.value)
);
}
});
if (selectSingleMatch === true && $(select).children().length === 1) {
$(select).children().get(0).selected = true;
}
});
});
};
$(function() {
$('#select').filterByText($('#textbox'), true);
});
當事情不特定的瀏覽器工作,始終爲您在調試控制檯例外。在這種情況下,IE的JavaScript實現中缺少修剪。 –