У меня есть таблица, которая отображает все доступные классы.Идентификатор TR для каждого класса - это поставщик класса + уровень оценки (например, для 8-го класса Виртуальным классом будет «Виртуальный8»).Затем у меня есть поле со списком «Поставщик», поле со списком «Оценка» и текстовое поле «Название класса».Когда вы нажимаете «Показать», он должен скрывать все TR, показывать TR, которые отображают правильный «Provider» + «Grade» ID, а затем скрывать любого родителя TD (tr), который не содержит поиск класса.
В настоящее время поиск по названию класса вообще ничего не делает.
Я знаю, что это очень запутанно, и, вероятно, есть более простой способ сделать это.Любые предложения будут ценны.Если я оставлю поле «Заголовок класса» пустым и начну поиск только по поставщику и уровню обучения, форма будет работать нормально;однако добавление заголовка класса в поиске ничего не дает.
Код:
<script src="jquery.missing.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#display").click(function() {
$('tr[id^="Independent"]').hide();
$('tr[id^="Virtual"]').hide();
$('tr[id^="Innovative"]').hide();
$('tr[id^="Lincoln"]').hide();
$('tr[id^="Missouri"]').hide();
$('tr[id^="Calvert"]').hide();
var result = $('#theprovider').val() + $('#thegrade').val();
$('tr[id*="' + result + '"]').show();
var search = $('#searchclass').val();
$('td:missing("' + search + '")').closest('tr').hide();
});
});
</script>
Код Missing.js (предоставленный Дарси Кларк):
$.expr[':'].missing = function(elem, index, match) {
return (elem.textContent || elem.innerText || Sizzle.getText([elem]) || "").indexOf(match[3]) == -1;
}