У меня есть таблица HTML / XML, созданная AJAX, которая отображает ограниченные столбцы таблицы базы данных. Я хотел бы отфильтровать строки таблицы HTML / XML, используя столбцы из базы данных, которые не являются частью таблицы HTML.
Пример:
Таблицы MySQL (игнорируйте неправильный синтаксис):
TABLE technicians (id,
name,
email,
level,
PRIMARY KEY (id));
TABLE certificates (id,
type,
name,
PRIMARY KEY(id, type),
FOREIGN KEY (id) REFERENCES technicians(id));
Таблица HTML / XML:
<table>
<tr>
<td>technician name</td>
<td>technician level</td>
</tr>
</table>
Каждая строка в таблице HTML / XML будет отображать имя технического специалиста и уровень технического специалиста, но каждая «строка технического специалиста» будет иметь больше данных, связанных с ней в базе данных. Я хочу отфильтровать каждый «ряд технических специалистов» по сертификатам, а также по уровню. Обратите внимание, что при фильтрации отдельного атрибута соответствующие строки показываются / скрываются, вместо того, чтобы отправлять блок критериев сразу (каждый критерий, в основном, представляет себя).
Насколько я могу судить, я могу сделать это следующими способами:
- Отслеживание дополнительных данных в таблице HTML / XML. Таким образом, я могу скрывать / показывать отдельные строки, поскольку их атрибуты фильтруются.
- Перезагрузите таблицу, передав критерии фильтрации моему скрипту на стороне сервера. Это потребует от меня анализа всей формы фильтра и перезагрузки всей таблицы каждый раз, когда атрибут фильтруется.
- Отправить AJAX-запрос критериев для фильтрации в скрипт, который будет возвращать идентификаторы техников в формате JSON. Таким образом, я мог хранить только идентификатор техника в строке таблицы.
Я новичок в веб-разработке и пытаюсь найти хороший баланс между работой на стороне сервера и на стороне клиента. Как правильно это сделать?
РЕДАКТИРОВАТЬ: добавлено номер 3.