Jquery с ajax каков наилучший способ управления таблицей и добавления удаления строк

#html #ajax #json #jquery

#HTML #ajax #json #jquery

Вопрос:

Я очень новичок в jquery и Ajax. Я работаю с элементом управления ActiveX, который рисует небольшие эскизные документы. Когда пользователи сохраняют новый эскиз с помощью этого элемента управления, я отправляю данные обратно на сервер с помощью Ajax. Одно из моих требований — показать список эскизов на странице существующих эскизов. Для этого списка я решил просто использовать таблицу, однако проблема в том, каков был бы наилучший способ управления этой таблицей с помощью AJax?

Я могу придумать несколько способов сделать это:

  1. Ответьте на запрос Ajax полностью новой таблицей со всеми ссылками на эскиз большого пальца,
  2. или я мог бы ответить всеми строками.
  3. Другая возможность, о которой я могу подумать, — это вообще не отвечать html, а использовать JSon-данные, содержащие всю информацию, необходимую мне для построения таблицы, а затем использовать Jquery для построения таблицы и добавления новых строк или удаления новых строк по мере создания и удаления эскизов пользователями.
  4. Что-то еще.

Какой подход вы бы использовали?

Ответ №1:

Важный вопрос заключается в следующем: «Где должна находиться часть вашего кода «визуального отображения»? В основном на сервере или в основном на клиенте javascript?»

Лично я бы отправил JSON обратно клиенту (# 3), а затем попросил бы клиента нести ответственность за помещение изображений в таблицу, используя одну из множества систем шаблонов Javascript, таких как EJS. Таким образом, стороне сервера не нужно заботиться о том, как все выглядит, на нем просто лежит довольно простая ответственность за организацию данных и объектов.

Комментарии:

1. Очень хороший вопрос. Я думал об этом проекте, что он должен работать на стороне клиента. Я не рассматривал возможность использования системы шаблонов java script (и я мало что знаю о том, как с ними работать), но это может быть хорошим способом построения таблицы на javascript.