С учетом того, как вы сформулировали варианты A и B. Очевидный выбор - A. Вот почему:
... вместе со списком идентификаторов в переменной javascript, и затем клиент запрашивает каждый элемент отдельно , а затем имеет ...
Это приведет к очень низкой производительности, так как теперь вы делаете много SELECT * FROM items WHERE id=x
, чтобы каждая возвращала 1 запись вместо SELECT * FROM items WHERE something_else
, поэтому у вас нет накладных расходов на каждый из этих запросов MySQL плюс каждый запрос HTTP , плохая эффективность.
Итак, как у вас есть, вариант А точно.
Но, давайте вернемся к сути того, что я думаю, что вы получаете с опцией B ...
Допустим, у вас есть интерфейс поиска HTML / веб, все это подается по первому запросу, без результатов. Теперь я ввожу параметры поиска и нажимаю «идти». В фоновом режиме (js / ajax) мои критерии могут быть отправлены на сервер и обработаны, и вы отправляете обратно объект JSON первой страницы элементов (только данные, item_name, item_id, item_desc и т. Д., Без html, без стилей), тогда браузер выводит его на страницу, используя javascript.
Почему это может быть лучше? Теперь вы можете думать о своей серверной / серверной части как о API, принимающем запросы и возвращающем данные, что довольно чисто в плане разработки кода. Он не должен циклически проходить через элементы, добавляющие HTML, без графических ресурсов и т. Д. Это очень гибко, потому что теперь давайте скажем, что вы получаете заказ, чтобы сделать эту систему элементов доступной через приложение iPhone! Проблема? Не совсем, у вас уже есть JSON API, поэтому ваше iPhone-приложение может использовать этот API-интерфейс таким же образом и соответствующим образом представлять данные внутри приложения.
Обратно на сторону веб-браузера: вероятно, это также приведет к более быстрому взаимодействию с пользователем, поскольку данные, которые вы отправляете обратно, 1) проще / быстрее для сервера отображать 2) меньший объем данных, поскольку он ТОЛЬКО данные элемента, а не его HTML-форматирование или окружающие элементы страницы.
Надеюсь, это поможет лучше понять ваше решение. Удачи!