Я просеивал много jQuery ajax-учебников и пытался включить его в свою игру! но я не совсем понимаю некоторые вещи. Возможно ли, что кто-то может объяснить, как сделать следующее через Ajax-вызовы:
1) Предположим, что я хочу получить список контактов с контроллера (каждый контакт имеет имя, телефон, адрес электронной почты). Нужно ли контроллеру "строить" правильный ответ для шаблона? Как выглядит контроллер? Как выглядит javascript для его получения?
2) Для добавления/обновления нового контакта через вызов ajax, как выглядит JavaScript?
Вот пример примера объяснения выше (не используя ajax):
Контроллер:
public static void list() { List contacts= Contact.fetchAll(); render(contacts); } public static void add(String name, String phone, String email) { Contact contact = new Contact(); contact.name = name; contact.phone = phone; contact.email = email; contact.save(); } public static void update(Long id, String name, String phone, String email) { Contact contact = Contact.findById(id); contact.name = name; contact.phone = phone; contact.email = email; contact.save(); }
Шаблон (перечисляет все контакты):
#{list contacts, as:'contact'} ${contact.name} ${contact.phone} ${contact.email} #{/list}
Шаблон (добавить контакт):
#{form @Contacts.add(), id:'form'}
<input type="text" name="name" />
<input type="text" name="phone" />
<input type="text" name="email" />
<input type="submit" value="Add" />
#{/form}